matplotlib.pyplot.plot#
- matplotlib.pyplot.plot(*args, scalex=True, scaley=True, data=None, **kwargs)[Quelle]#
Zeichnet y gegen x als Linien und/oder Markierungen.
Aufrufsignaturen
plot([x], y, [fmt], *, data=None, **kwargs) plot([x], y, [fmt], [x2], y2, [fmt2], ..., **kwargs)
Die Koordinaten der Punkte oder Linienknoten werden durch x und y angegeben.
Der optionale Parameter fmt ist eine bequeme Möglichkeit, grundlegende Formatierungen wie Farbe, Markierung und Linienstil zu definieren. Es handelt sich um eine Kurzschreibweise, die im Abschnitt Hinweise weiter 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 mehr Kontrolle über das Aussehen zu erhalten. Linien-Eigenschaften und fmt können gemischt werden. Die folgenden beiden Aufrufe ergeben 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.
Beschriftete Daten zeichnen
Es gibt eine bequeme Möglichkeit, Objekte mit beschrifteten Daten (d.h. Daten, auf die über den Index
obj['y']zugegriffen werden kann) zu zeichnen. Anstatt die Daten in x und y anzugeben, können Sie das Objekt im Parameter data angeben und nur die Bezeichnungen für x und y angeben.>>> plot('xlabel', 'ylabel', data=obj)
Alle indizierbaren Objekte werden unterstützt. Dies könnten z.B. ein
dict, einpandas.DataFrameoder ein strukturierter Numpy-Array sein.Mehrere Datensätze zeichnen
Es gibt verschiedene Möglichkeiten, mehrere Datensätze zu zeichnen.
Der einfachste Weg ist,
plotmehrmals aufzurufen. 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 von ihnen 2D mit der 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])
Der dritte Weg ist die Angabe mehrerer Gruppen von [x], y, [fmt]
>>> plot(x1, y1, 'g^', x2, y2, 'g-')
In diesem Fall gelten zusätzliche Schlüsselwortargumente für alle Datensätze. Außerdem kann diese Syntax nicht mit dem data-Parameter kombiniert werden.
Standardmäßig wird jeder Linie ein anderer Stil zugewiesen, der durch einen 'Style-Zyklus' bestimmt wird. Die Parameter fmt und Linien-Eigenschaften sind nur dann erforderlich, wenn Sie explizit von diesen Standardwerten abweichen möchten. Alternativ können Sie den Stil-Zyklus auch mit
rcParams["axes.prop_cycle"]ändern (Standard:cycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])).- Parameter:
- x, yarray-artig oder float
Die horizontalen / vertikalen Koordinaten der Datenpunkte. x-Werte sind optional und standardmäßig
range(len(y)).Üblicherweise sind diese Parameter 1D-Arrays.
Sie können auch Skalare oder zweidimensionale Arrays 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 Format-String, z.B. 'ro' für rote Kreise. Eine vollständige Beschreibung der Format-Strings finden Sie im Abschnitt Hinweise.
Format-Strings sind nur eine Abkürzung, um schnell grundlegende Linien-Eigenschaften einzustellen. Alle diese und weitere Eigenschaften können auch über Schlüsselwortargumente gesteuert werden.
Dieses Argument kann nicht als Schlüsselwort übergeben werden.
- dataindizierbares Objekt, optional
Ein Objekt mit beschrifteten Daten. Wenn angegeben, geben Sie die Labelnamen zum Zeichnen in x und y an.
Hinweis
Technisch gesehen gibt es eine geringfügige Mehrdeutigkeit bei Aufrufen, bei denen das zweite Label ein gültiges fmt ist.
plot('n', 'o', data=obj)könnteplt(x, y)oderplt(y, fmt)sein. In solchen Fällen wird die erstgenannte Interpretation gewählt, aber eine Warnung ausgegeben. Sie können die Warnung unterdrücken, indem Sie einen leeren Format-String hinzufügenplot('n', 'o', '', data=obj).
- Gibt zurück:
- Liste von
Line2D Eine Liste von Linien, die die gezeichneten Daten darstellen.
- Liste von
- Andere Parameter:
- scalex, scaleybool, default: True
Diese Parameter bestimmen, ob die Ansichtsgrenzen an die Datengrenzen angepasst werden. Die Werte werden an
autoscale_viewweitergegeben.- **kwargs
Line2Dproperties, optional kwargs werden verwendet, um Eigenschaften wie Linien-Label (für automatische Legenden), Liniendicke, Kantenglättung, Marker-Füllfarbe usw. anzugeben. 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 Linien mit einem einzigen Plot-Aufruf angeben, gelten die kwargs für alle diese Linien. Wenn das Label-Objekt iterierbar ist, wird jedes Element als Label für jeden Datensatz verwendet.
Hier ist eine Liste der verfügbaren
Line2D-EigenschaftenEigenschaft
Beschreibung
eine Filterfunktion, die ein (m, n, 3) Float-Array und einen dpi-Wert entgegennimmt und ein (m, n, 3) Array und zwei Offsets von der linken unteren Ecke des Bildes zurückgibt
float oder None
bool
antialiasedoderaabool
BboxBaseoder Nonebool
Patch oder (Path, Transform) oder None
CapStyleoder {'butt', 'projecting', 'round'}JoinStyleoder {'miter', 'round', 'bevel'}Sequenz von Floats (An/Aus-Linie in Punkten) oder (None, None)
(2, N) Array oder zwei 1D-Arrays
{'default', 'steps', 'steps-pre', 'steps-mid', 'steps-post'}, Standard: 'default'
{'full', 'left', 'right', 'bottom', 'top', 'none'}
Farbe oder None
str
bool
object
{'-', '--', '-.', ':', '', (offset, on-off-seq), ...}
float
Marker-Stil-String,
PathoderMarkerStylemarkeredgecolorodermecmarkeredgewidthodermewfloat
markerfacecolorodermfcmarkerfacecoloraltodermfcaltmarkersizeodermsfloat
None oder int oder (int, int) oder Slice oder list[int] oder float oder (float, float) oder list[bool]
bool
Liste von
AbstractPathEffectfloat oder aufrufbar[[Artist, Event], tuple[bool, dict]]
float
bool
(scale: float, length: float, randomness: float)
bool oder None
CapStyleoder {'butt', 'projecting', 'round'}JoinStyleoder {'miter', 'round', 'bevel'}unknown
str
bool
1D-Array
1D-Array
float
Siehe auch
scatterXY-Scatterplot mit Markierungen variabler Größe und/oder Farbe (manchmal auch Blasendiagramm genannt).
Anmerkungen
Hinweis
Dies ist der pyplot-Wrapper für
axes.Axes.plot.Format-Strings
Ein Format-String besteht aus einem Teil für Farbe, Markierung und Linie
fmt = '[marker][line][color]'
Jeder davon ist optional. Wenn nicht angegeben, wird der Wert aus dem Stil-Zyklus verwendet. Ausnahme: Wenn
lineangegeben ist, aber keinemarker, sind die Daten eine Linie ohne Markierungen.Andere Kombinationen wie
[color][marker][line]werden ebenfalls unterstützt, aber beachten Sie, dass deren Parsing mehrdeutig sein kann.Markierungen
Zeichen
Beschreibung
'.'Punktmarkierung
','Pixelmarkierung
'o'Kreismarkierung
'v'Dreieck-runter-Markierung
'^'Dreieck-hoch-Markierung
'<'Dreieck-links-Markierung
'>'Dreieck-rechts-Markierung
'1'tri_down Markierung
'2'tri_up Markierung
'3'tri_left Markierung
'4'tri_right Markierung
'8'Oktagon-Markierung
's'Quadrat-Markierung
'p'Fünfeck-Markierung
'P'Plus (gefüllte) Markierung
'*'Stern-Markierung
'h'Hexagon1-Markierung
'H'Hexagon2-Markierung
'+'Plus-Markierung
'x'X-Markierung
'X'X (gefüllte) Markierung
'D'Diamant-Markierung
'd'dünne_Diamant-Markierung
'|'vline-Markierung
'_'hline-Markierung
Linienstile
Zeichen
Beschreibung
'-'durchgehender Linienstil
'--'gestrichelter Linienstil
'-.'Strich-Punkt-Linienstil
':'gepunkteter Linienstil
Beispiel-Format-Strings
'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 Farb-Abkürzungen sind die einbuchstabigen Codes
Zeichen
color
'b'blau
'g'grün
'r'rot
'c'cyan
'm'magenta
'y'gelb
'k'schwarz
'w'weiß
und die
'CN'Farben, die in den Standard-Eigenschaftszyklus indexieren.Wenn die Farbe der einzige Teil des Format-Strings ist, können Sie zusätzlich jede
matplotlib.colors-Spezifikation verwenden, z.B. vollständige Namen ('green') oder Hex-Strings ('#008000').
Beispiele für die Verwendung von matplotlib.pyplot.plot#
Stil von Text und Beschriftungen mit einem Wörterbuch steuern
Platzierung von Datums-Ticks nach Wiederholungsregeln
Matplotlib mit Style-Sheets und `rcParams` anpassen