matplotlib.pyplot.plot #
- matplotlib.pyplot. plot ( * args , scalex = True , scaley = True , data = None , ** kwargs ) [Quelle] #
Zeichnen Sie y gegen x als Linien und/oder Markierungen.
Rufsignaturen:
plot([x], y, [fmt], *, data=None, **kwargs) plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)
Die Koordinaten der Punkte oder Linienknoten sind durch x , y gegeben .
Der optionale Parameter fmt ist eine bequeme Möglichkeit, grundlegende Formatierungen wie Farbe, Markierung und Linienstil zu definieren. Es handelt sich um eine verkürzte Zeichenfolgennotation, die im Abschnitt „ Hinweise “ unten beschrieben wird.
>>> plot(x, y) # plot x and y using default line style and color >>> plot(x, y, 'bo') # plot x and y using blue circle markers >>> plot(y) # plot y using x as index array 0..N-1 >>> plot(y, 'r+') # ditto, but with red plusses
Sie können
Line2D
Eigenschaften als Schlüsselwortargumente verwenden, um das Erscheinungsbild besser zu steuern. Linieneigenschaften und fmt können gemischt werden. Die folgenden beiden Aufrufe liefern identische Ergebnisse:>>> plot(x, y, 'go--', linewidth=2, markersize=12) >>> plot(x, y, color='green', marker='o', linestyle='dashed', ... linewidth=2, markersize=12)
Bei Konflikten mit fmt haben Schlüsselwortargumente Vorrang.
Plotten von beschrifteten Daten
Es gibt eine bequeme Möglichkeit, Objekte mit beschrifteten Daten (dh Daten, auf die über index zugegriffen werden kann
obj['y']
) zu plotten. Anstatt die Daten in x und y anzugeben , können Sie das Objekt im data -Parameter angeben und nur die Beschriftungen für x und y angeben :>>> plot('xlabel', 'ylabel', data=obj)
Alle indexierbaren Objekte werden unterstützt. Dies könnte zB ein
dict
, einpandas.DataFrame
oder ein strukturiertes numpy-Array sein.Zeichnen mehrerer Datensätze
Es gibt verschiedene Möglichkeiten, mehrere Datensätze darzustellen.
Der einfachste Weg ist, einfach
plot
mehrmals anzurufen. Beispiel:>>> plot(x1, y1, 'bo') >>> plot(x2, y2, 'go')
Wenn x und/oder y 2D-Arrays sind, wird für jede Spalte ein separater Datensatz gezeichnet. Wenn sowohl x als auch y 2D sind, müssen sie die gleiche Form haben. Wenn nur einer davon 2D mit Form (N, m) ist, muss der andere die Länge N haben und wird für jeden Datensatz m verwendet.
Beispiel:
>>> x = [1, 2, 3] >>> y = np.array([[1, 2], [3, 4], [5, 6]]) >>> plot(x, y)
ist äquivalent zu:
>>> for col in range(y.shape[1]): ... plot(x, y[:, col])
Die dritte Möglichkeit besteht darin, mehrere Sätze von Gruppen [x] , y , [fmt] anzugeben :
>>> plot(x1, y1, 'g^', x2, y2, 'g-')
In diesem Fall gilt jedes zusätzliche Schlüsselwortargument für alle Datensätze. Auch diese Syntax kann nicht mit dem Datenparameter kombiniert werden .
Standardmäßig wird jeder Linie ein anderer Stil zugewiesen, der durch einen „Stilzyklus“ festgelegt wird. Die Eigenschaftsparameter fmt und line sind nur erforderlich, wenn Sie ausdrücklich von diesen Vorgaben abweichen möchten. Alternativ können Sie den Stilzyklus auch mit ändern
rcParams["axes.prop_cycle"]
(Standard: ).cycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])
- Parameter :
- x, y Array-artig oder Skalar
Die horizontalen/vertikalen Koordinaten der Datenpunkte. x -Werte sind optional und standardmäßig auf
range(len(y))
.Üblicherweise handelt es sich bei diesen Parametern um 1D-Arrays.
Sie können auch Skalare oder zweidimensional sein (in diesem Fall stellen die Spalten separate Datensätze dar).
Diese Argumente können nicht als Schlüsselwörter übergeben werden.
- fmtstr , optional
Ein Formatstring, zB 'ro' für rote Kreise. Eine vollständige Beschreibung der Formatzeichenfolgen finden Sie im Abschnitt Hinweise .
Formatzeichenfolgen sind nur eine Abkürzung zum schnellen Festlegen grundlegender Linieneigenschaften. All dies und mehr kann auch durch Schlüsselwortargumente gesteuert werden.
Dieses Argument kann nicht als Schlüsselwort übergeben werden.
- data indexierbares Objekt, optional
Ein Objekt mit beschrifteten Daten. Geben Sie, falls vorhanden, die Beschriftungsnamen an, die in x und y gezeichnet werden sollen .
Notiz
Technisch gesehen gibt es eine leichte Mehrdeutigkeit bei Aufrufen, bei denen das zweite Label ein gültiges fmt ist . könnte oder sein . In solchen Fällen wird die erstere Interpretation gewählt, aber eine Warnung ausgesprochen. Sie können die Warnung unterdrücken, indem Sie einen leeren Formatstring hinzufügen .
plot('n', 'o', data=obj)
plt(x, y)
plt(y, fmt)
plot('n', 'o', '', data=obj)
- Rückgaben :
- Liste von
Line2D
Eine Liste von Linien, die die gezeichneten Daten darstellen.
- Liste von
- Andere Parameter :
- scalex, scaley bool, Standard: True
Diese Parameter bestimmen, ob die Sichtgrenzen an die Datengrenzen angepasst werden. Die Werte werden an weitergegeben
autoscale_view
.- **kwargs-
Line2D
Eigenschaften, optional kwargs werden verwendet, um Eigenschaften wie eine Linienbeschriftung (für automatische Legenden), Linienbreite, Antialiasing, Markierungsflächenfarbe festzulegen. Beispiel:
>>> plot([1, 2, 3], [1, 2, 3], 'go-', label='line 1', linewidth=2) >>> plot([1, 2, 3], [1, 4, 9], 'rs', label='line 2')
Wenn Sie mehrere Zeilen mit einem Plot-Aufruf angeben, gelten die Kwargs für alle diese Zeilen. Falls das Label-Objekt iterierbar ist, wird jedes Element als Label für jeden Datensatz verwendet.
Hier ist eine Liste der verfügbaren
Line2D
Eigenschaften:Eigentum
Beschreibung
eine Filterfunktion, die ein (m, n, 3) Float-Array und einen dpi-Wert akzeptiert und ein (m, n, 3)-Array und zwei Offsets von der unteren linken Ecke des Bildes zurückgibt
Skalar oder Keine
bool
antialiased
oder ähbool
bool
Patch oder (Pfad, Transform) oder None
color
oder cFarbe
CapStyle
oder {'hinter', 'vorstehend', 'rund'}JoinStyle
oder {'Gehrung', 'rund', 'Fase'}Folge von Gleitkommazahlen (Ein/Aus Tinte in Punkten) oder (Keine, Keine)
(2, N)-Array oder zwei 1D-Arrays
drawstyle
oder DS{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, default: 'default'
{'voll', 'links', 'rechts', 'unten', 'oben', 'keine'}
Farbe oder Keine
Str
bool
Objekt
linestyle
oder ls{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}
linewidth
oder lwschweben
Marker-Style-String
Path
oderMarkerStyle
markeredgecolor
oder mecFarbe
markeredgewidth
oder miauschweben
markerfacecolor
oder mfcFarbe
markerfacecoloralt
oder mfcaltFarbe
markersize
oder msschweben
None oder int oder (int, int) oder slice oder list[int] oder float oder (float, float) oder list[bool]
bool
float or callable[[Artist, Event], tuple[bool, dict]]
Unbekannt
bool
(Maßstab: Float, Länge: Float, Zufälligkeit: Float)
bool oder Keine
CapStyle
oder {'hinter', 'vorstehend', 'rund'}JoinStyle
oder {'Gehrung', 'rund', 'Fase'}Unbekannt
Str
bool
1D-Array
1D-Array
schweben
Siehe auch
scatter
XY-Streudiagramm mit Markierungen unterschiedlicher Größe und/oder Farbe (manchmal auch Blasendiagramm genannt).
Anmerkungen
Zeichenfolgen formatieren
Ein Formatstring besteht aus einem Teil für Farbe, Markierung und Linie:
fmt = '[marker][line][color]'
Jeder von ihnen ist optional. Wenn nicht angegeben, wird der Wert aus dem Stilzyklus verwendet. Ausnahme: Wenn
line
angegeben ist, aber keinmarker
, sind die Daten eine Zeile ohne Markierungen.Andere Kombinationen wie
[color][marker][line]
werden ebenfalls unterstützt, aber beachten Sie, dass ihre Analyse mehrdeutig sein kann.Markierungen
Charakter
Bezeichnung
'.'
Punktmarkierung
','
Pixelmarker
'o'
Kreismarkierung
'v'
Triangle_down-Markierung
'^'
Triangle_up-Markierung
'<'
Triangle_linke Markierung
'>'
Triangle_right Markierung
'1'
tri_down-Markierung
'2'
tri_up-Markierung
'3'
tri_left-Markierung
'4'
tri_right-Markierung
'8'
achteckige Markierung
's'
quadratische Markierung
'p'
Fünfeck-Markierung
'P'
plus (gefüllte) Markierung
'*'
Sternmarkierung
'h'
hexagon1 Markierung
'H'
hexagon2 Markierung
'+'
plus Markierung
'x'
x-Markierung
'X'
x (gefüllt) Markierung
'D'
Diamantmarker
'd'
thin_diamond-Marker
'|'
Vline-Markierung
'_'
Strichmarkierung
Linienstile
Charakter
Bezeichnung
'-'
durchgezogener Linienstil
'--'
gestrichelter Linienstil
'-.'
Strich-Punkt-Linienstil
':'
gepunkteter Linienstil
Beispiel für Formatstrings:
'b' # blue markers with default shape 'or' # red circles '-g' # green solid line '--' # dashed line with default color '^k:' # black triangle_up markers connected by a dotted line
Farben
Die unterstützten Farbabkürzungen sind die Einzelbuchstabencodes
Charakter
Farbe
'b'
blau
'g'
grün
'r'
rot
'c'
cyan
'm'
Magenta
'y'
gelb
'k'
Schwarz
'w'
Weiß
und die
'CN'
Farben, die in den Standardeigenschaftszyklus indizieren.Wenn die Farbe der einzige Teil des Format-Strings ist, können Sie zusätzlich beliebige
matplotlib.colors
Angaben verwenden, zB vollständige Namen ('green'
) oder Hex-Strings ('#008000'
).
Beispiele mit matplotlib.pyplot.plot
#
Plotten von maskierten und NaN-Werten
Benutzerdefinierte Figure-Unterklassen
Verwalten mehrerer Figuren in Pyplot
Steuerung des Textstils und der Beschriftungen mithilfe eines Wörterbuchs
Eigenschaften festlegen und abrufen
Setzen von Datumshäkchen mithilfe von Wiederholungsregeln
Rotierende benutzerdefinierte Tick-Labels
Anpassen von Matplotlib mit Stylesheets und rcParams