How to overlay pcolour figures?
2 vues (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Good afternoon,
I am after a bit of advice again, if anyone has any time.
I've looked in the directory and at previous questions but can't seem to see a clear solution to my problem and I suspect that there is one.
I have five matrixes, (501,501,5). They show plume spread. I can plot each individually with pcolor no problem.
Is there a way to overlay the five into one figure?
Thanks for any help, advice, direction!
0 commentaires
Réponses (2)
Mike Garrity
le 9 Oct 2015
The pcolor function simply creates a surface object with color but no Z. You can set the FaceAlpha property on that to make it transparent.
[x,y] = meshgrid(linspace(-pi,pi,40));
h(1) = pcolor(cos(x).*cos(y));
hold on
h(2) = pcolor(sin(x).*sin(y));
hold off
h(2).FaceAlpha = .5;
Kelly Kearney
le 9 Oct 2015
Alternatively, assuming each dataset holds a zero wherever the plume is not, and the plume regions themselves don't overlap too much, you set the 0-values to NaN.
[x,y] = meshgrid(linspace(0,1,100));
a = exp(-((x-0.1).^2./0.1 + (y-0.1).^2)./0.1);
b = exp(-((x-0.9).^2./0.1 + (y-0.9).^2)./0.1);
a(a < 0.01) = NaN;
b(b < 0.01) = NaN;
pcolor(x,y,a);
hold on;
pcolor(x,y,b);
shading flat;
Voir également
Catégories
En savoir plus sur Lighting, Transparency, and Shading dans Help Center et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!