Einführung
In diesem Tutorial erhalten Sie einen Schritt-für-Schritt Leitfaden zum Verwenden der pyplot Schnittstelle in Matplotlib. Das pyplot-Modul ist eine Sammlung von Funktionen, die Matplotlib so wie MATLAB funktionieren lassen und Ihnen ermöglichen, Plots einfach zu erstellen und anzupassen. Dieses Tutorial setzt voraus, dass Sie über ein grundlegendes Verständnis von Matplotlib und seinen Begriffen verfügen.
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 nutzen.
Manchmal müssen Sie 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 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.
Ein einfaches Diagramm generieren
Beginnen wir mit dem Erstellen eines einfachen Diagramms, indem wir die plot-Funktion in pyplot verwenden. In diesem Beispiel erstellen wir einen Liniendiagramm mit den y-Werten [1, 2, 3, 4]:
import matplotlib.pyplot as plt
plt.plot([1, 2, 3, 4])
plt.ylabel('some numbers')
plt.show()
Erklärung:
- Wir importieren das
pyplot-Modul ausmatplotlibund geben es den Aliasplt. - Die
plot-Funktion wird verwendet, um ein Liniendiagramm zu generieren. Indem wir eine einzelne Liste von y-Werten angeben, werden die x-Werte automatisch als[0, 1, 2, 3]generiert, da Python-Indizes bei 0 beginnen. - Die
ylabel-Funktion setzt die Bezeichnung für die y-Achse. - Schließlich zeigt die
show-Funktion das Diagramm an.
Formatierung des Diagrammstils
Als nächstes passen wir den Stil unseres Diagramms an. Wir können das optionale dritte Argument der plot-Funktion verwenden, um die Formatzeichenfolge anzugeben, die die Farbe und den Linientyp des Diagramms angibt. Beispielsweise erstellen wir das gleiche Liniendiagramm mit roten Kreisen:
plt.plot([1, 2, 3, 4], [1, 4, 9, 16], 'ro')
plt.axis([0, 6, 0, 20])
plt.show()
Erklärung:
- Wir verwenden die Formatzeichenfolge
'ro', um roten Kreise für das Diagramm anzugeben. - Die
axis-Funktion wird verwendet, um die Anzeigebereich der Achsen festzulegen, indem der Wertebereich für die x- und y-Achse angegeben wird.
Plotten mehrerer Linien
Wir können auch in einem Funktionsaufruf mehrere Linien mit unterschiedlichen Stilen mithilfe von Arrays plotten. Plotten wir drei Linien: eine gestrichelte rote Linie, blaue Quadrate und grüne Dreiecke:
import numpy as np
t = np.arange(0., 5., 0.2)
plt.plot(t, t, 'r--', t, t**2, 'bs', t, t**3, 'g^')
plt.show()
Erklärung:
- Wir verwenden das
numpy-Modul, um ein Arraytmit gleichmäßig abgetasteten Zeitwerten zu erstellen. - Die
plot-Funktion wird mit drei Paaren vonx- undy-Werten aufgerufen, gefolgt von den Formatzeichenfolgen'r--'(gestrichelte rote Linie),'bs'(blaue Quadrate) und'g^'(grüne Dreiecke).
Plotten mit kategorischen Variablen
Matplotlib ermöglicht es Ihnen, Plots mit kategorischen Variablen zu erstellen. Erstellen wir einen Balkendiagramm-, Streudiagramm- und Liniendiagramm mit kategorischen Variablen:
names = ['group_a', 'group_b', 'group_c']
values = [1, 10, 100]
plt.figure(figsize=(9, 3))
plt.subplot(131)
plt.bar(names, values)
plt.subplot(132)
plt.scatter(names, values)
plt.subplot(133)
plt.plot(names, values)
plt.suptitle('Categorical Plotting')
plt.show()
Erklärung:
- Wir erstellen eine Liste
namesmit drei kategorischen Werten und eine Listevalues, die ihre entsprechenden Werte repräsentiert. - Die
figure-Funktion wird aufgerufen, um eine neue Figur mit einer bestimmten Größe zu erstellen. - Wir verwenden die
subplot-Funktion, um ein Gitter von Teilfiguren zu erstellen. In diesem Beispiel erstellen wir drei Teilfiguren, jede mit einem anderen Plottyp: Balkendiagramm, Streudiagramm und Liniendiagramm. - Die
suptitle-Funktion wird verwendet, um den Obertitel der Figur festzulegen.
Anpassen von Linieneigenschaften
Matplotlib ermöglicht es Ihnen, verschiedene Linieneigenschaften anzupassen, wie die Linienstärke, der Strichstil und die Farbe. Zeigen wir einige Möglichkeiten, um Linieneigenschaften zu setzen:
x = np.arange(0, 5, 0.1)
line, = plt.plot(x, np.sin(x), '-')
## Verwenden der Setter-Methode der Line2D-Instanz
line.set_linewidth(2.0) ## Setze die Linienstärke-Eigenschaft der Linie auf 2.0
## Verwenden der plt.setp-Funktion
plt.setp(line, color='r', linewidth=2.0) ## Setze die Farbe und die Linienstärke-Eigenschaften mit der setp-Funktion
plt.show()
Erklärung:
- Wir erstellen ein Array
xund berechnen die entsprechenden y-Werte mit dernp.sin-Funktion. - Die
plot-Funktion wird aufgerufen, um einen Liniendiagramm zu erstellen. - Wir verwenden die
set-Methode derLine2D-Instanz, um die Linienstärke-Eigenschaft der Linie auf 2.0 zu setzen. - Alternativ können wir die
setp-Funktion verwenden, um mehrere Eigenschaften der Linie, wie Farbe und Linienstärke, mit Schlüsselwortargumenten zu setzen.
Zusammenfassung
In diesem Tutorial haben wir gelernt, wie man die pyplot-Schnittstelle in Matplotlib verwendet, um Plots zu erstellen und anzupassen. Wir haben einfache Plots generieren, den Stil von Plots formatieren, mehrere Linien plotten, kategorische Variablen verwenden und Linieneigenschaften anpassen behandelt. Indem Sie diese Funktionalitäten nutzen, können Sie verschiedene Arten von Plots erstellen, um Ihre Daten effektiv zu visualisieren.