web-dev-qa-db-fra.com

Comment dessiner un tracé de surface sans bords noirs dans MATLAB?

Les lignes noires sont horribles, comment puis-je m'en débarrasser? Je veux seulement les surfaces colorées.

40
Jader Dias

Un autre choix consiste à définir les propriétés edgeColor et/ou lineStyle de l'objet de poignée de surface sur aucun.

>> hSurf = surf(X,Y,Z,'EdgeColor','none','LineStyle','none','FaceLighting','phong');
48
Azim

Il s'agit d'une solution plus générale, vous pouvez également changer la couleur de la bordure une fois la surface créée. Il ne repose pas sur LineStyle et FaceLighting.

a= peaks(1000);
h = surf(a)
set(h, ‘edgecolor’,'none’)

Remarque, j'ai fait une vidéo de 45 secondes qui montre cela et comment y remédier.

http://blogs.mathworks.com/videos/2008/08/13/matlab-basics-setting-Edge-color-for-large-surface-plots/

16
MatlabDoug

La commande d'ombrage est votre amie:

ombrage plat - vous donne la surface sans lignes de maillage

ombrage interp - interpole les couleurs entre les patchs pour donner une finition lisse

ombrage à facettes - vous donne la surface avec des lignes de maille noires (similaires à plates)

11
Ian Hopkinson

Je crois shading interp est celui que vous recherchez.

3
kevin