MATLAB-Wasserfalldiagramm
In diesem Tutorial wird die Erstellung eines Wasserfalldiagramms mit der Funktion waterfall()
von MATLAB erläutert.
Das MATLAB-Wasserfalldiagramm
Ein Wasserfalldiagramm ist wie ein Maschendiagramm; Es hat auch Vorhänge auf der y-Achse, die einen Wasserfalleffekt auf der Handlung erzeugen. Wir können die Funktion waterfall()
von MATLAB verwenden, um ein 3D-Wasserfalldiagramm zu erstellen.
Die Funktion waterfall()
hat die sechs unten gezeigten Syntaxen.
waterfall(x,y,z)
waterfall(x,y,z,color)
waterfall(z)
waterfall(z,c)
waterfall(axes,___)
obj = waterfall(___)
Die erste Syntax erstellt ein Wasserfalldiagramm auf einem Gitter, das durch die Variablen x
und y
angegeben wird, und die Höhen der Kanten werden von der Variablen z
übernommen. Standardmäßig verwendet die Funktion waterfall()
die Variable z
, um den im Diagramm vorhandenen Kanten Farben zuzuweisen.
Die Eingabevariablen x
und y
sollten eine Matrix oder ein Vektor sein, und die Variable z
sollte eine Matrix sein und zwei Zeilen und zwei Spalten haben. Wenn x
und y
Matrizen sind, sollte ihre Grösse gleich der Grösse der Variablen z
sein.
Die zweite Syntax wird verwendet, um die Farbe der Kanten festzulegen, die die Standardfarbe der Kanten ersetzt. Die Farbe sollte eine Matrix mit der gleichen Größe wie die Anzahl der Kanten sein und die Farben aller Kanten im Diagramm enthalten.
Lassen Sie uns zum Beispiel mit der Funktion waterfall()
ein Wasserfalldiagramm einiger Zufallsdaten erstellen. Siehe Code unten.
clc
clear
[x,y] = meshgrid(-6:.3:6);
z = x.*cos(y) + y.*sin(x);
waterfall(x,y,z)
Ausgang:
Wir haben im obigen Code das meshgrid()
verwendet, um ein einheitliches Gitter zu erstellen. Die Farben der Kanten werden nach der Matrix z
zugeordnet.
Wir können den Befehl colorbar
nach der Funktion waterfall()
verwenden, der einen Farbbalken entlang des Wasserfalldiagramms anzeigt, mit dem Sie sehen können, welche Farbe zu welchem Wert gehört.
Die dritte Syntax erstellt ein Wasserfalldiagramm entsprechend den Höhen der Variablen z
und nimmt die Gitterwerte oder die Werte von x
und y
aus den Indizes der z
-Matrix. Die Farbe wird ebenfalls aus der z
-Matrix übernommen.
Die vierte Syntax kann die Farben der Kanten angeben, die in der Matrix z
in der Matrix c
vorhanden sind, sodass die Grösse von c
gleich der Grösse von z
ist. Die fünfte Syntax wird verwendet, um das Wasserfalldiagramm auf den Achsen zu erstellen, die durch die Variable axes
angegeben sind, anstatt auf den aktuellen Achsen des Diagramms.
Die sechste Syntax wird verwendet, um ein Objekt des Wasserfalldiagramms zu erstellen, das verwendet werden kann, um die Eigenschaften des Wasserfalldiagramms anzuzeigen und zu ändern. Lassen Sie uns zum Beispiel ein Objekt der Funktion waterfall()
mit dem obigen Beispielcode erstellen und seine Eigenschaften überprüfen.
Siehe Code unten.
clc
clear
[x,y] = meshgrid(-6:.3:6);
z = x.*cos(y) + y.*sin(x);
p = waterfall(x,y,z);
Ausgang:
p =
Patch with properties:
FaceColor: [1 1 1]
FaceAlpha: 1
EdgeColor: 'flat'
LineStyle: '-'
Faces: [41×46 double]
Vertices: [1886×3 double]
Die obige Ausgabe zeigt einige Eigenschaften des Wasserfalldiagramms, und wir können alle Eigenschaften sehen, indem wir in der Ausgabe auf das Wort Pfad
klicken. Wir können die Eigenschaften des Wasserfalldiagramms mit dem Objekt der Funktion und dem Eigenschaftsnamen ändern.
Die erste Eigenschaft, oben gezeigt FaceColor
, stellt die Farbe des von den Kanten umschlossenen Bereichs dar, die standardmäßig auf weiße Farbe eingestellt ist, aber wir können sie mithilfe eines Farbnamens oder eines RGB-Triplet-Werts in jede beliebige Farbe ändern.
Die Eigenschaft EdgeColor
stellt die Farbe der Kanten oder Punkte auf dem Diagramm dar, die standardmäßig mit dem Wert der Matrix z
zugewiesen werden, aber wir können diese Eigenschaft auch auf die gleiche Weise ändern, wie wir die Eigenschaft FaceColor
ändern .
Die Eigenschaften FaceAlpha
und EdgeAlpha
werden verwendet, um die Transparenz der im Diagramm vorhandenen Flächen und Kanten festzulegen, die standardmäßig auf 1
eingestellt ist, aber wir können sie auf jeden Wert zwischen 0
und 1
.
Die Eigenschaft LineStyle
legt den Stil der Linien fest, die verwendet werden, um die Punkte auf dem Diagramm zu verbinden, und standardmäßig ist ihr Wert auf eine durchgehende Linie wie -
eingestellt, aber wir können sie mit --
auf eine gestrichelte Linie setzen. , gestrichelte Punktlinie mit -.
, gepunktete Linie mit :
und keine Linie mit none
.
Die Eigenschaft LineWidth
wird verwendet, um die Breite der Linie festzulegen, die im Diagramm verwendet wird, und standardmäßig ist ihr Wert auf 0.5
eingestellt, aber wir können ihren Wert auf jede positive Ganzzahl setzen.
Die Eigenschaft Marker
wird verwendet, um den Marker festzulegen, der verwendet wird, um die Punkte auf dem Diagramm darzustellen, und standardmäßig ist sein Wert auf none
eingestellt, aber wir können ihn mit o
, Raute, auf einen Kreis setzen mit d
, Fünfeck mit p
und so weiter.
Wir können die Eigenschaft MarkerSize
verwenden, um die Markierungsgröße festzulegen, die standardmäßig auf 5
eingestellt ist, und sie auf einen beliebigen positiven Wert setzen.
Wir können die Eigenschaft MarkerEdgeColor
verwenden, um die Farbe der Randlinie des Markers festzulegen, und MarkerFaceColor
, um die Füllfarbe des Markers festzulegen, die verwendet wird, um den Marker mit Farbe zu füllen, und standardmäßig ist sein Wert auf keine
stellen.
Lassen Sie uns zum Beispiel das obige Beispiel wiederholen und die oben genannten Eigenschaften ändern. Siehe Code unten.
clc
clear
[x,y] = meshgrid(-6:1:6);
z = x.*cos(y) + y.*sin(x);
p = waterfall(x,y,z);
p.FaceColor = 'white';
p.EdgeColor = 'red';
p.LineStyle = '-.';
p.LineWidth = 1;
p.Marker = 'd';
p.MarkerSize = 10;
p.MarkerEdgeColor = 'green';
p.MarkerFaceColor = 'yellow';
Ausgang:
Im obigen Code haben wir einige Eigenschaften des Wasserfalldiagramms geändert, und wir können auch viele andere Eigenschaften ändern. Weitere Informationen zu den Eigenschaften des Wasserfalldiagramms finden Sie unter diesem Link.
Überprüfen Sie diesen Link für weitere Details über die Funktion waterfall()
.