Python Matplotlib - Windbubenvisualisierung

PythonPythonBeginner
Jetzt üben

This tutorial is from open-source community. Access the source code

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Tutorial lernen wir, wie man mit Python Matplotlib Windbubenplots erstellt. Windbuben sind eine grafische Darstellung der Windgeschwindigkeit und -richtung mithilfe einer Kombination von Flaggen, Linien und Punkten. Die Länge der Linie repräsentiert die Windgeschwindigkeit, während die Ausrichtung der Flaggen und Punkte die Windrichtung repräsentiert.

Tipps für die virtuelle Maschine

Nachdem der Start der virtuellen Maschine abgeschlossen ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu nutzen.

Manchmal müssen Sie einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund der Einschränkungen von Jupyter Notebook nicht automatisiert werden.

Wenn Sie bei der Lernphase Probleme haben, können Sie Labby gerne fragen. Geben Sie nach der Sitzung Feedback, und wir werden das Problem für Sie prompt beheben.

Bibliotheken importieren

Zunächst müssen wir die erforderlichen Bibliotheken importieren. In diesem Fall werden wir die Matplotlib- und NumPy-Bibliotheken verwenden.

import matplotlib.pyplot as plt
import numpy as np

Daten erstellen

Als nächstes werden wir die Daten erstellen, die zum Erstellen des Windbubenplots verwendet werden. Wir werden ein gleichmäßiges Gitter von 5x5 und ein Vektorfeld mithilfe der meshgrid- und Multiplikationsfunktionen erstellen.

x = np.linspace(-5, 5, 5)
X, Y = np.meshgrid(x, x)
U, V = 12 * X, 12 * Y

Windbubenplot erstellen

Jetzt können wir den Windbubenplot mit der barbs-Funktion erstellen. Wir werden die Standardparameter verwenden, um das gleichmäßige Gitter zu plotten.

plt.barbs(X, Y, U, V)
plt.show()

Windbubenplot anpassen

Wir können den Windbubenplot anpassen, indem wir die Parameter der barbs-Funktion ändern. Beispielsweise können wir die Länge und den Drehpunkt der Vektoren ändern, die Kreise für eine leere Bube ausfüllen und die Farben der Flaggen und Stäbe ändern.

plt.barbs(X, Y, U, V, length=8, pivot='middle', fill_empty=True, rounding=False,
          sizes=dict(emptybarb=0.25, spacing=0.2, height=0.3), flagcolor='r',
          barbcolor=['b', 'g'], flip_barb=True, barb_increments=dict(half=10, full=20, flag=100))
plt.show()

Maskierten Windbubenplot erstellen

Wir können auch einen maskierten Windbubenplot erstellen, indem wir ein maskiertes Array verwenden. In diesem Fall werden wir den Wert eines Vektors in einen ungültigen Wert umwandeln und ihn maskieren.

masked_u = np.ma.masked_array(U)
masked_u[4] = 1000  ## Ungültiger Wert, der nicht geplottet werden soll, wenn maskiert
masked_u[4] = np.ma.masked

plt.barbs(X, Y, masked_u, V, length=8, pivot='middle')
plt.show()

Zusammenfassung

In diesem Tutorial haben wir gelernt, wie man Windbubenplots mit Python Matplotlib erstellt. Wir haben begonnen, indem wir die erforderlichen Bibliotheken importiert und die Daten für den Plot erstellt haben. Anschließend haben wir einen grundlegenden Windbubenplot erstellt und ihn durch Ändern der Parameter anpassen. Schließlich haben wir gelernt, wie man einen maskierten Windbubenplot mit einem maskierten Array erstellt.