Main Content

2D- und 3D-Plots

Linienplots

Zum Erstellen zweidimensionaler Linienplots verwenden Sie die Funktion plot. Beispielsweise können Sie die Sinusfunktion über einen Vektor mit Werten in linearen Abständen von 0 bis 2π plotten:

x = linspace(0,2*pi);
y = sin(x);
plot(x,y)

Figure contains an axes object. The axes object contains an object of type line.

Sie können die Achsen beschriften und einen Titel hinzufügen.

xlabel("x")
ylabel("sin(x)")
title("Plot of the Sine Function")

Figure contains an axes object. The axes object with title Plot of the Sine Function, xlabel x, ylabel sin(x) contains an object of type line.

Indem Sie ein drittes Eingabeargument zur Funktion plot hinzufügen, können Sie dieselben Variablen mithilfe einer rot gestrichelten Linie plotten.

plot(x,y,"r--")

Figure contains an axes object. The axes object contains an object of type line.

"r--" ist eine Linienspezifikation. Jede Spezifikation kann Zeichen für die Linienfarbe, den Linienstil und Markierungen umfassen. Eine Markierung ist ein Symbol, das an jedem geplotteten Datenpunkt angezeigt wird, zum Beispiel +, o oder *. So fordert g:*" beispielsweise eine grün gepunktete Linie mit *-Markierungen an.

Beachten Sie, dass die Titel und Beschriftungen, die Sie für den ersten Plot definiert haben, nicht mehr im aktuellen Abbildungsfenster angezeigt werden. Standardmäßig löscht MATLAB® die Abbildung jedes Mal, wenn Sie eine Plotfunktion aufrufen oder die Achsen und andere Elemente zurücksetzen, um den neuen Plot vorzubereiten.

Wenn Sie einer vorhandenen Abbildung Plots hinzufügen möchten, verwenden Sie den Befehl hold on. Bis Sie hold off verwenden oder das Fenster schließen, werden alle Plots im aktuellen Abbildungsfenster angezeigt.

x = linspace(0,2*pi);
y = sin(x);
plot(x,y)

hold on

y2 = cos(x);
plot(x,y2,":")
legend("sin","cos")

hold off

Figure contains an axes object. The axes object contains 2 objects of type line. These objects represent sin, cos.

3D-Plots

Dreidimensionale Plots werden typischerweise mit einer Oberfläche angezeigt, die von einer Funktion in zwei Variablen, z=f(x,y), definiert wird. Berechnen Sie zum Beispiel z=xe-x2-y2 bei gegebenen Zeichen- und Spaltenvektoren x und y mit jeweils 20 Punkten im Bereich [-2,2].

x = linspace(-2,2,20);
y = x';
z = x .* exp(-x.^2 - y.^2);

Anschließend erstellen Sie einen Oberflächenplot.

surf(x,y,z)

Figure contains an axes object. The axes object contains an object of type surface.

Sowohl die Funktion surf als auch ihre Begleitfunktion mesh zeigen Oberflächen in drei Dimensionen an. Mit surf werden die Verbindungslinien und die Flächen der Oberflächen in Farbe angezeigt. Mit mesh werden Drahtmodelloberflächen erstellt, bei denen nur die Linien farbig angezeigt werden, die definierende Punkte verbinden.

Mehrfachdiagramme

Sie können entweder mithilfe der Funktion tiledlayout oder subplot mehrere Plots in verschiedenen Bereichen desselben Fensters anzeigen.

Die Funktion tiledlayout wurde in R2019b eingeführt und bietet im Vergleich zu subplot mehr Kontrolle über Beschriftungen und Abstände. Erstellen Sie beispielsweise ein 2x2-Layout in einem Abbildungsfenster. Rufen Sie dann nexttile jedes Mal auf, wenn Sie möchten, dass ein Plot im nächsten Bereich angezeigt wird.

t = tiledlayout(2,2);
title(t,"Trigonometric Functions")
x = linspace(0,30);

nexttile
plot(x,sin(x))
title("Sine")

nexttile
plot(x,cos(x))
title("Cosine")

nexttile
plot(x,tan(x))
title("Tangent")

nexttile
plot(x,sec(x))
title("Secant")

Figure contains 4 axes objects. Axes object 1 with title Sine contains an object of type line. Axes object 2 with title Cosine contains an object of type line. Axes object 3 with title Tangent contains an object of type line. Axes object 4 with title Secant contains an object of type line.

Siehe subplot, wenn Sie eine Version verwenden, die älter als R2019b ist.