Einführung
In diesem Lab lernst du, wie du mit Matplotlib eine Ellipse mit einer Orientierungsrichtung darstellst. Ellipsen sind eine Form, die in der Datenvisualisierung häufig verwendet wird, um Daten darzustellen. Indem du einer Ellipse eine Orientierungsrichtung hinzufügst, kannst du zusätzliche Informationen über die Richtung der Daten bereitstellen.
Tipps für die VM
Nachdem der VM-Start abgeschlossen ist, klicke in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu nutzen.
Manchmal musst du einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund von Einschränkungen in Jupyter Notebook nicht automatisiert werden.
Wenn du bei der Lernphase Probleme hast, kannst du Labby gerne fragen. Gib nach der Sitzung Feedback, und wir werden das Problem für dich prompt beheben.
Matplotlib importieren und Figur und Achse erstellen
Zunächst musst du Matplotlib importieren und eine Figur und eine Achse erstellen. Die Figur und die Achse sind die Container für deine Grafik.
import matplotlib.pyplot as plt
## Erstellen Sie eine Figur und eine Achse
fig, ax = plt.subplots(subplot_kw={"aspect": "equal"})
Ellipse erstellen
Als nächstes musst du eine Ellipse mithilfe der Klasse Ellipse erstellen. Du kannst den Mittelpunkt der Ellipse, die Breite und Höhe der Ellipse sowie den Rotationswinkel angeben.
from matplotlib.patches import Ellipse
ellipse = Ellipse(
xy=(2, 4),
width=30,
height=20,
angle=35,
facecolor="none",
edgecolor="b"
)
ax.add_patch(ellipse)
Orientierungsrichtung hinzufügen
Du kannst einer Ellipse eine Orientierungsrichtung hinzufügen, indem du einen Marker am Endpunkt der kleinen Achse zeichnest. Du kannst die Methode get_co_vertices() verwenden, um die Koordinaten der Eckpunkte der Ellipse zu erhalten. Anschließend kannst du die Klasse Affine2D() verwenden, um den Marker zu drehen, um den Winkel der Ellipse zu entsprechen.
from matplotlib.markers import MarkerStyle
from matplotlib.transforms import Affine2D
## Zeichnen Sie einen Pfeilmarker am Endpunkt der kleinen Achse
vertices = ellipse.get_co_vertices()
t = Affine2D().rotate_deg(ellipse.angle)
ax.plot(
vertices[0][0],
vertices[0][1],
color="b",
marker=MarkerStyle(">", "full", t),
markersize=10
)
Die Orientierungsrichtung des Pfeils umkehren
Wenn du die Orientierungsrichtung des Pfeils umkehren möchtest, kannst du den Markertyp von > zu < wechseln.
## Um die Orientierungsrichtung des Pfeils umzukehren, wechsle den Markertyp von > zu <.
ax.plot(
vertices[0][0],
vertices[0][1],
color="b",
marker=MarkerStyle("<", "full", t),
markersize=10
)
Zeige das Diagramm an
Schließlich kannst du das Diagramm mit der Methode show() anzeigen.
plt.show()
Zusammenfassung
Herzlichen Glückwunsch! Du hast gelernt, wie man mit Matplotlib eine Ellipse mit einer Orientierungsrichtung zeichnet. Diese Technik kann nützlich sein, um Daten zu visualisieren, die eine Richtung haben.