Dual-Achsen-Matplotlib-Diagramm erstellen

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 werden Sie durch die Schritte zum Erstellen eines einfachen Diagramms mit Matplotlib, einer Python-Bibliothek zur Datenvisualisierung, geführt. Wir werden das Modul host_subplot verwenden, um ein Diagramm mit zwei y-Achsen zu erstellen.

Tipps für virtuelle Maschinen

Nachdem der virtuelle Computer gestartet 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 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.

Importieren der erforderlichen Module

Der erste Schritt besteht darin, die erforderlichen Module für unser Diagramm zu importieren. Wir werden numpy verwenden, um unsere x- und y-Daten zu generieren, matplotlib.pyplot, um das Diagramm zu erstellen, und mpl_toolkits.axes_grid1, um die zweite y-Achse zu erstellen.

import matplotlib.pyplot as plt
import numpy as np
from mpl_toolkits.axes_grid1 import host_subplot

Daten generieren

Als nächstes müssen wir unsere x- und y-Daten generieren. Für dieses Beispiel werden wir eine Sinuswelle generieren.

xx = np.arange(0, 2*np.pi, 0.01)
yy = np.sin(xx)

Das Diagramm erstellen

Jetzt können wir unser Diagramm mit der Funktion host_subplot erstellen. Diese Funktion erstellt ein Teilbild mit zwei y-Achsen.

ax = host_subplot(111)
ax.plot(xx, yy)

Die zweite y-Achse erstellen

Um die zweite y-Achse zu erstellen, müssen wir ein neues Achsenobjekt mit der Funktion twin erstellen.

ax2 = ax.twin()

Setzen der Striche und Beschriftungen für die zweite y-Achse

Wir können die Striche und Beschriftungen für die zweite y-Achse setzen, indem wir die Funktion set_xticks verwenden und die Strichpositionen und -beschriftungen als Argumente übergeben.

ax2.set_xticks([0.,.5*np.pi, np.pi, 1.5*np.pi, 2*np.pi],
               labels=["$0$", r"$\frac{1}{2}\pi$",
                       r"$\pi$", r"$\frac{3}{2}\pi$", r"$2\pi$"])

Verbergen der Strichbeschriftungen für die rechte y-Achse

Wir können die Strichbeschriftungen für die rechte y-Achse mit der Funktion major_ticklabels.set_visible verbergen.

ax2.axis["right"].major_ticklabels.set_visible(False)

Anzeigen der Strichbeschriftungen für die obere y-Achse

Wir können die Strichbeschriftungen für die obere y-Achse mit der gleichen Funktion major_ticklabels.set_visible anzeigen.

ax2.axis["top"].major_ticklabels.set_visible(True)

Zeige das Diagramm an

Schließlich können wir unser Diagramm mit der Funktion show anzeigen.

plt.show()

Zusammenfassung

In diesem Tutorial haben wir gelernt, wie man mit Matplotlib ein einfaches Diagramm mit zwei y-Achsen erstellt. Wir haben das Modul host_subplot verwendet, um das Diagramm zu erstellen, und das Modul mpl_toolkits.axes_grid1, um die zweite y-Achse zu erstellen. Wir haben unsere Daten mit numpy generiert und das Diagramm mit matplotlib.pyplot angezeigt.