Hi,
I am trying to plot coutour overlaying on the top of imagesc. But my result is contour blocking the imagesc. I tried to make countour transparency.
So, please show me how to make countour transparency.
Thanks.

 Akzeptierte Antwort

Walter Roberson
Walter Roberson am 11 Jun. 2011

0 Stimmen

thick = 0.8; %alpha value
ch = contourf(...);
patches = findobj(ch,'-property','AlphaData')
for ph = patches
set(ph,'AlphaData', thick * get(ph,'AlphaData'));
end

2 Kommentare

Dawn
Dawn am 11 Jun. 2011
Thank you.
My codes are: two dataset- d ,d1
imagesc(d); % plot figure
hold on;
thick = 0.8; %alpha value
ch =contour(d1,'black'); % overlay a transparent contour over imagesc
patches = findobj(ch,'-property','AlphaData');
for ph = patches
set(ph,'AlphaData', thick * get(ph,'AlphaData'));
end
Aftr running the codes, error message is:
Invalid handle
Error in ==> contourplot at 5
patches = findobj(ch,'-property','AlphaData');
Dawn
Dawn am 11 Jun. 2011
Thank you.
My codes are: two dataset- d ,d1
imagesc(d); % plot figure
hold on;
thick = 0.8; %alpha value
ch =contour(d1,'black'); % overlay a transparent contour over imagesc
patches = findobj(ch,'-property','AlphaData');
for ph = patches
set(ph,'AlphaData', thick * get(ph,'AlphaData'));
end
Aftr running the codes, error message is:
Invalid handle
Error in ==> contourplot at 5
patches = findobj(ch,'-property','AlphaData');

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (1)

Jaime Calle
Jaime Calle am 4 Jul. 2011
Bearbeitet: John Kelly am 2 Mär. 2015

0 Stimmen

Once you have the handle to contour plot (ch), look for 'FaceAlpha' property in the contour plot children.
Patches = findobj(ch,'-property','FaceAlpha');
Then you can set transparency value to those patches by means of:
set(Patches, 'FaceAlpha', thick)
For patches and surfaces, the object property is 'FaceAlpha':

Tags

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by