Einführung
In diesem Tutorial wird gezeigt, wie die Matplotlib-Bibliothek verwendet werden kann, um benutzerdefinierte Spines an bestimmten Positionen zu erstellen.
Tipps für die VM
Nachdem der VM-Start abgeschlossen ist, klicken Sie in der oberen linken Ecke, um zur Registerkarte Notebook zu wechseln und Jupyter Notebook für die Übung zu öffnen.
Manchmal müssen Sie einige Sekunden warten, bis Jupyter Notebook vollständig geladen ist. Die Validierung von Vorgängen kann aufgrund der Einschränkungen in Jupyter Notebook nicht automatisiert werden.
Wenn Sie während des Lernens 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 für dieses Tutorial importieren. Wir werden Matplotlib und NumPy verwenden.
import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits import axisartist
Figur und Teilplots erstellen
Wir werden eine Figur mit zwei Teilplots mit der Methode add_gridspec erstellen.
fig = plt.figure(figsize=(6, 3), layout="constrained")
gs = fig.add_gridspec(1, 2)
Ersten Teilplot erstellen
Im ersten Teilplot werden wir eine neue Achse erstellen, die durch y = 0 verläuft, mithilfe von axisartist.Axes. Wir werden auch die anderen Spines unsichtbar machen.
ax0 = fig.add_subplot(gs[0, 0], axes_class=axisartist.Axes)
ax0.axis["y=0"] = ax0.new_floating_axis(nth_coord=0, value=0, axis_direction="bottom")
ax0.axis["y=0"].toggle(all=True)
ax0.axis["y=0"].label.set_text("y = 0")
ax0.axis["bottom", "top", "right"].set_visible(False)
Zweiten Teilplot erstellen
Im zweiten Teilplot werden wir axisartist.axislines.AxesZero verwenden, um automatisch xzero- und yzero-Achsen zu erstellen. Wir werden die anderen Spines unsichtbar machen und die xzero-Achse sichtbar setzen.
ax1 = fig.add_subplot(gs[0, 1], axes_class=axisartist.axislines.AxesZero)
ax1.axis["xzero"].set_visible(True)
ax1.axis["xzero"].label.set_text("Achse Null")
ax1.axis["bottom", "top", "right"].set_visible(False)
Daten plotten
Jetzt, nachdem wir unsere Teilplots erstellt haben, können wir unsere Daten mit np.sin(x) plotten.
x = np.arange(0, 2*np.pi, 0.01)
ax0.plot(x, np.sin(x))
ax1.plot(x, np.sin(x))
Plot anzeigen
Schließlich können wir unseren Plot mit plt.show() anzeigen.
plt.show()
Zusammenfassung
In diesem Tutorial haben wir gelernt, wie man mit der Matplotlib-Bibliothek benutzerdefinierte Spines an bestimmten Positionen erstellt. Wir haben eine Figur mit zwei Teilplots erstellt und axisartist.Axes und axisartist.axislines.AxesZero verwendet, um unsere Spines zu erstellen. Wir haben auch die anderen Spines unsichtbar gemacht und die xzero-Achse sichtbar gesetzt. Schließlich haben wir unsere Daten geplottet und unseren Plot angezeigt.