why does the surf command give me this result?
1 vue (au cours des 30 derniers jours)
Afficher commentaires plus anciens
Hi! I got this image with
surf(est,nord,down,I_frame,'EdgeColor','none')
where (est,nord) are not regular points.
I know for sure that there are brighter points for example in the region est=(30,40), nord=(-50,-55), but it seems that the darker points preveal over the brigth ones and only them are plotted. Any ideas why this happen? Thank you
2 commentaires
Star Strider
le 9 Oct 2021
One optiion could be to add a 'FaceAlpha' value —
surf(est,nord,down,I_frame,'EdgeColor','none', 'FaceAlphs',0.5)
That would make all of them semi-transparent, allowing those that are otherwise ‘covered’ to be seen. Change that value (going from 0 to 1) to get the desired result.
.
Réponses (2)
Star Strider
le 9 Oct 2021
I have no idea what the data are, or how the data are being plotted.
If the colormap is gray the ‘brighter’ values are higher ‘z’ values. If those are the ones to be separated and plotted, set a suitable threshold and only plot the data above the threshold. The easiest way to do that is to set all the values below the threshold to NaN.
Example —
v = linspace(-5, 5, 25);
[X,Y] = ndgrid(v);
Z = exp(-(X.^2+Y.^2)*0.1);
figure
surf(X, Y, Z)
colormap(turbo)
title('Original')
figure
surf(X, Y, Z, 'EdgeColor','none', 'FaceAlpha',0.5)
colormap(gray)
view(0,90)
title('Original, Gray Scale, Top View')
Znew = Z;
Znew(Znew<0.5) = NaN; % Set Values Below Threshold To 'NaN' So That They Will Not Plot
figure
surf(X, Y, Znew)
colormap(gray)
view(0,90)
title('Bright Areas')
Experiment to get the desired result.
.
0 commentaires
yanqi liu
le 10 Oct 2021
sir, may be use some colormap type to display, such as
colomap hsv
0 commentaires
Voir également
Catégories
En savoir plus sur Red dans Help Center et File Exchange
Produits
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!