it-swarm.com.de

Wie zeichnet man in MATLAB ein Flächendiagramm ohne schwarze Ränder?

Die schwarzen Linien sind schrecklich, wie kann ich sie loswerden? Ich will nur die farbigen Flächen.

40
Jader Dias

Eine andere Möglichkeit besteht darin, die Eigenschaften edgeColor und/oder lineStyle des Oberflächenhandle-Objekts auf none festzulegen.

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

Dies ist eine allgemeinere Lösung. Sie können die Kantenfarbe auch ändern, nachdem die Oberfläche erstellt wurde. Es ist nicht auf LineStyle und FaceLighting angewiesen.

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

Beachten Sie, dass ich ein 45-Sekunden-Video gemacht habe, das das Auftreten und das Beheben dieses Problems zeigt.

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

16
MatlabDoug

Der Schattierungsbefehl ist dein Freund:

schattierung flach - gibt Ihnen die Oberfläche ohne Gitterlinien

shading Interp - Interpoliert Farben zwischen den Patches, um ein gleichmäßiges Ergebnis zu erzielen

schattierung facettiert - gibt Ihnen die Oberfläche mit schwarzen Maschenlinien (ähnlich flach)

11
Ian Hopkinson

Ich glaube shading interp ist derjenige, den Sie suchen.

3
kevin