Matplotlib Pyplot

Pyplot ist eine Unterbibliothek von Matplotlib, die eine MATLAB-ähnliche Plot-API bereitstellt.

Pyplot ist ein häufig verwendetes Zeichenmodul, mit dem Benutzer einfach 2D-Diagramme zeichnen können.

Pyplot enthält eine Reihe verwandter Zeichenfunktionen. Jede Funktion nimmt einige Änderungen an der aktuellen Abbildung vor, zum Beispiel: Markierungen zur Abbildung hinzufügen, eine neue Abbildung erzeugen, einen neuen Zeichenbereich in der Abbildung erstellen usw.

Bei der Verwendung können wir import verwenden, um die pyplot-Bibliothek zu importieren und einen Aliasplt festzulegen.:

import matplotlib.pyplot as plt

Auf diese Weise können wirpltverwenden, um auf die Methoden des Pyplot-Pakets zu verweisen.

Im Folgenden finden Sie einige häufig verwendete pyplot-Funktionen:

  • plot(): dient zum Zeichnen von Linien- und Streudiagrammen
  • scatter(): dient zum Zeichnen von Streudiagrammen
  • bar(): dient zum Zeichnen von vertikalen Balkendiagrammen und horizontalen Balkendiagrammen
  • hist(): dient zum Zeichnen von Histogrammen
  • pie(): dient zum Zeichnen von Kreisdiagrammen
  • imshow(): wird zum Zeichnen von Bildern verwendet
  • subplots(): wird zum Erstellen von Subplots verwendet

Zusätzlich zu diesen grundlegenden Funktionen bietet pyplot viele weitere Funktionen, wie zum Beispiel Funktionen zum Festlegen von Diagrammeigenschaften, Funktionen zum Hinzufügen von Text und Anmerkungen, Funktionen zum Speichern von Diagrammen in Dateien und so weiter.

Im folgenden Beispiel verwenden wir zwei Koordinaten(0,0)bis(6,100), um eine Linie zu zeichnen:

Beispiel

import matplotlib.pyplot as plt
import numpy as np

xpoints = np.array([0, 6])
ypoints = np.array([0, 100])

plt.plot(xpoints, ypoints)
plt.show()

Das Ausgabeergebnis ist wie folgt:

Im obigen Beispiel haben wir Pyplotsplot()-Funktion verwendet,plot()ist die grundlegendste Funktion zum Zeichnen von 2D-Grafiken.

plot()wird zum Zeichnen verwendet. Sie kann Punkte und Linien zeichnen. Das Syntaxformat lautet wie folgt:

# 画单条线
plot([x], y, [fmt], *, data=None, **kwargs)
# 画多条线
plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)

Parameter description:

  • x, y:Die Knoten von Punkten oder Linien, x sind die Daten der x-Achse, y sind die Daten der y-Achse. Die Daten können eine Liste oder ein Array sein.
  • fmt:Optional, legt das grundlegende Format fest (wie Farbe, Marker und Linienstil).
  • **kwargs:Optional, wird bei 2D-Diagrammen verwendet, um angegebene Eigenschaften festzulegen, wie Beschriftungen, Linienbreite usw.
>>> plot(x, y)        # Erstellt ein 2D-Liniendiagramm der Daten in y gegenüber den entsprechenden Werten in x unter Verwendung des Standardstils
>>> plot(x, y, 'bo')  # Erstelle ein 2D-Liniendiagramm der Daten in y gegenüber den entsprechenden Werten in x, gezeichnet mit blauen gefüllten Kreisen
>>> plot(y)           # x-Werte sind 0..N-1
>>> plot(y, 'r+')     # Rote +-Zeichen verwenden

Farbzeichen:'b' blau, 'm' magenta, 'g' grün, 'y' gelb, 'r' rot, 'k' schwarz, 'w' weiß, 'c' cyan, '#0053A6' RGB-Farbstring. Wenn mehrere Kurven keine Farbe angeben, wählen sie automatisch unterschiedliche Farben aus.

Linienstilparameter:'-' durchgezogene Linie, '--' gestrichelte Linie, '-.' Strichpunktlinie, ':' gepunktete Linie.

Markerzeichen:'.' Punktmarker, ',' Pixelmarker (sehr kleiner Punkt), 'o' Marker für gefüllten Kreis, 'v' Marker für umgekehrtes Dreieck, '^' Marker für nach oben weisendes Dreieck, '>' Marker für nach rechts weisendes Dreieck, '<' Marker für nach links weisendes Dreieck... und so weiter.

Wenn wir eine Linie von den Koordinaten (1, 3) zu (8, 10) zeichnen möchten, müssen wir zwei Arrays [1, 8] und [3, 10] an dieplot-Funktion übergeben:

Beispiel

import matplotlib.pyplot as plt
import numpy as np

xpoints = np.array([1, 8])
ypoints = np.array([3, 10])

plt.plot(xpoints, ypoints)
plt.show()

Das Ausgabeergebnis des obigen Codes ist:

Wenn wir nur zwei Koordinatenpunkte statt einer Linie zeichnen möchten, können wir denoParameter verwenden, der einen gefüllten Kreis als Marker darstellt:

Zeichne zwei Punkte mit den Koordinaten (1, 3) und (8, 10)

import matplotlib.pyplot as plt
import numpy as np

xpoints = np.array([1, 8])
ypoints = np.array([3, 10])

plt.plot(xpoints, ypoints, 'o')
plt.show()

Das Ausgabeergebnis des obigen Codes ist:

Wir können auch eine beliebige Anzahl von Punkten zeichnen; stelle nur sicher, dass die Anzahl der Punkte auf beiden Achsen gleich ist.

Zeichne eine unregelmäßige Linie mit den Koordinaten (1, 3), (2, 8), (6, 1), (8, 10). Die entsprechenden beiden Arrays sind: [1, 2, 6, 8] und [3, 8, 1, 10].

Beispiel

import matplotlib.pyplot as plt
import numpy as np

xpoints = np.array([1, 2, 6, 8])
ypoints = np.array([3, 8, 1, 10])

plt.plot(xpoints, ypoints)
plt.show()

Das Ausgabeergebnis des obigen Codes ist:

Wenn wir die Punkte auf der x-Achse nicht angeben, dann wird x basierend auf den Werten von y auf 0, 1, 2, 3..N-1。

Beispiel

import matplotlib.pyplot as plt
import numpy as np

ypoints = np.array([3, 10])

plt.plot(ypoints)
plt.show()

Das Ausgabeergebnis des obigen Codes ist:

Aus der obigen Abbildung ist ersichtlich, dass der Wert von x standardmäßig auf [0, 1]。

Sehen wir uns ein weiteres Beispiel mit mehr Werten an:

Beispiel

import matplotlib.pyplot as plt
import numpy as np

ypoints = np.array([3, 8, 1, 10, 5, 7])

plt.plot(ypoints)
plt.show()

Das Ausgabeergebnis des obigen Codes ist:

Aus der obigen Abbildung ist ersichtlich, dassxder Wert von standardmäßig auf[0, 1, 2, 3, 4, 5]。

Im folgenden Beispiel zeichnen wir einen Sinus- und Kosinusgraphen. In den Parametern von plt.plot() geben wir zwei Paare vonx,yWerten an. Das erste Paar ist x,y, was der Sinusfunktion entspricht. Das zweite Paar istx,z, was der Kosinusfunktion entspricht.

Beispiel

import matplotlib.pyplot as plt
import numpy as np

x = np.arange(0,4*np.pi,0.1)   # start,stop,step
y = np.sin(x)
z = np.cos(x)
plt.plot(x,y,x,z)
plt.show()

Das Ausgabeergebnis des obigen Codes ist:

Weitere Inhalte finden Sie unter:https://matplotlib.org/stable/api/_as_gen/matplotlib.pyplot.plot.html

Weitere Erweiterungen