matplotlib.axes.Axes.scatter#
- Axes.scatter(x, y, s=None, c=None, *, marker=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, edgecolors=None, colorizer=None, plotnonfinite=False, data=None, **kwargs)[Quelle]#
Ein Scatterplot von y gegen x mit variabler Markierungsgröße und/oder -farbe.
- Parameter:
- x, yfloat oder Array-ähnlich, Form (n, )
Die Datenpositionen.
- sfloat oder Array-ähnlich, Form (n, ), optional
Die Markierungsgröße in Punkt**2 (typografische Punkte sind 1/72 Zoll). Standard ist
rcParams['lines.markersize'] ** 2.Die Linienbreite und die Kantenfarbe können visuell mit der Markierungsgröße interagieren und zu Artefakten führen, wenn die Markierungsgröße kleiner als die Linienbreite ist.
Wenn die Linienbreite größer als 0 ist und die Kantenfarbe etwas anderes als 'none' ist, wird die effektive Größe des Markers um die halbe Linienbreite erhöht, da der Strich auf der Kante der Form zentriert wird.
Um den Marker-Rand zu eliminieren, setzen Sie entweder linewidth=0 oder edgecolor='none'.
- cArray-ähnlich oder Liste von Farben oder Farbe, optional
Die Markierungsfarben. Mögliche Werte
Ein Skalar oder eine Sequenz von n Zahlen, die mithilfe von cmap und norm auf Farben abgebildet werden.
Ein 2D-Array, dessen Zeilen RGB oder RGBA sind.
Eine Farbsequenz der Länge n.
Ein einzelner Farbformatstring.
Beachten Sie, dass c keine einzelne numerische RGB- oder RGBA-Sequenz sein sollte, da diese von einem Array von Werten, die abgebildet werden sollen, nicht zu unterscheiden ist. Wenn Sie denselben RGB- oder RGBA-Wert für alle Punkte angeben möchten, verwenden Sie ein 2D-Array mit einer einzigen Zeile. Andernfalls hat die Wertübereinstimmung Vorrang, wenn die Größe mit x und y übereinstimmt.
Wenn Sie eine einzelne Farbe für alle Punkte angeben möchten, bevorzugen Sie das Schlüsselwortargument color.
Standardmäßig
None. In diesem Fall wird die Markierungsfarbe durch den Wert von color, facecolor oder facecolors bestimmt. Wenn diese nicht angegeben sind oderNonesind, wird die Markierungsfarbe durch die nächste Farbe des aktuellen "Formen- und Füll"-Farbzyklus derAxesbestimmt. Dieser Zyklus ist standardmäßigrcParams["axes.prop_cycle"](Standard:cycler('color', ['#1f77b4', '#ff7f0e', '#2ca02c', '#d62728', '#9467bd', '#8c564b', '#e377c2', '#7f7f7f', '#bcbd22', '#17becf'])).- marker
MarkerStyle, Standard:rcParams["scatter.marker"](Standard:'o') Der Markerstil. marker kann entweder eine Instanz der Klasse oder die Textkürzel für einen bestimmten Marker sein. Weitere Informationen zu Markerstilen finden Sie unter
matplotlib.markers.- cmapstr oder
Colormap, Standard:rcParams["image.cmap"](Standard:'viridis') Die Colormap-Instanz oder der registrierte Colormap-Name, der verwendet wird, um Skalardaten in Farben abzubilden.
Dieser Parameter wird ignoriert, wenn c RGB(A) ist.
- normstr oder
Normalize, optional Die Normalisierungsmethode, die verwendet wird, um Skalardaten vor der Abbildung auf Farben mithilfe von cmap in den Bereich [0, 1] zu skalieren. Standardmäßig wird eine lineare Skalierung verwendet, die den niedrigsten Wert auf 0 und den höchsten auf 1 abbildet.
Wenn angegeben, kann dies eine der folgenden Optionen sein
Eine Instanz von
Normalizeoder eine ihrer Unterklassen (siehe Farbkartennormalisierung).Ein Skalennamen, d. h. einer von "linear", "log", "symlog", "logit" usw. Für eine Liste der verfügbaren Skalen rufen Sie
matplotlib.scale.get_scale_names()auf. In diesem Fall wird eine geeigneteNormalize-Unterklasse dynamisch generiert und instanziiert.
Dieser Parameter wird ignoriert, wenn c RGB(A) ist.
- vmin, vmaxfloat, optional
Wenn Skalardaten und keine explizite norm verwendet werden, definieren vmin und vmax den Datenbereich, den die Farbkarte abdeckt. Standardmäßig deckt die Farbkarte den gesamten Wertebereich der bereitgestellten Daten ab. Es ist ein Fehler, vmin/vmax zu verwenden, wenn eine norm-Instanz angegeben ist (aber die Verwendung eines
str-norm-Namens zusammen mit vmin/vmax ist akzeptabel).Dieser Parameter wird ignoriert, wenn c RGB(A) ist.
- alphafloat, Standard: None
Der Alpha-Mischwert, zwischen 0 (transparent) und 1 (opak).
- linewidthsfloat oder Array-ähnlich, Standard:
rcParams["lines.linewidth"](Standard:1.5) Die Linienbreite der Marker-Ränder. Hinweis: Der Standardwert für edgecolors ist 'face'. Möglicherweise möchten Sie dies ebenfalls ändern.
- edgecolors{'face', 'none', None} oder Farbe oder Liste von Farben, Standard:
rcParams["scatter.edgecolors"](Standard:'face') Die Kantenfarbe des Markers. Mögliche Werte
'face': Die Kantenfarbe ist immer gleich der Flächenfarbe.
'none': Es wird kein Patch-Rand gezeichnet.
Eine Farbe oder eine Sequenz von Farben.
Für nicht gefüllte Marker wird edgecolors ignoriert. Stattdessen wird die Farbe wie bei 'face' bestimmt, d. h. aus c, colors oder facecolors.
- colorizer
Colorizeroder None, Standard: None Das Colorizer-Objekt, das verwendet wird, um Farbe auf Daten abzubilden. Wenn None, wird ein Colorizer-Objekt aus norm und cmap erstellt.
Dieser Parameter wird ignoriert, wenn c RGB(A) ist.
- plotnonfinitebool, Standard: False
Ob Punkte mit nicht-endlichen c (d. h.
inf,-infodernan) gezeichnet werden sollen. WennTrue, werden die Punkte mit der bad-Farbkartensfarbe gezeichnet (sieheColormap.set_bad).
- Gibt zurück:
- Andere Parameter:
- dataindizierbares Objekt, optional
Wenn angegeben, akzeptieren die folgenden Parameter auch einen String
s, der alsdata[s]interpretiert wird, wennsein Schlüssel indataistx, y, s, linewidths, edgecolors, c, facecolor, facecolors, color
- **kwargs
PathCollectionEigenschaften Eigenschaft
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
Array-ähnlich oder float oder None
bool
antialiasedoderaaoderantialiasedsbool oder Liste von bools
Array-ähnlich oder None
CapStyleoder {'butt', 'projecting', 'round'}(vmin: float, vmax: float)
BboxBaseoder Nonebool
Patch oder (Path, Transform) oder None
Colormapoder str oder NoneFarbe oder Liste von RGBA-Tupeln
edgecoloroderecoderedgecolorsfacecoloroderfacecolorsoderfcstr
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
unknown
bool
JoinStyleoder {'miter', 'round', 'bevel'}object
linestyleoderdashesoderlinestylesoderlsstr oder Tupel oder Liste davon
linewidthoderlinewidthsoderlwfloat oder Liste von floats
bool
Normalizeoder str oder None(N, 2) oder (2,) Array-ähnlich
Liste von
AbstractPathEffectunknown
None oder bool oder float oder callable
float
bool
sizesnumpy.ndarrayoder None(scale: float, length: float, randomness: float)
bool oder None
str
Liste von str oder None
bool
float
Siehe auch
plotZum Erstellen von Scatterplots, wenn Marker in Größe und Farbe identisch sind.
Anmerkungen
Die Funktion
plotist für Scatterplots schneller, bei denen die Marker weder in Größe noch in Farbe variieren.Beliebige oder alle von x, y, s und c können Maskierungsarrays sein. In diesem Fall werden alle Masken kombiniert und nur die nicht maskierten Punkte werden gezeichnet.
Grundsätzlich arbeitet scatter mit 1D-Arrays; x, y, s und c können als N-D-Arrays eingegeben werden, werden aber innerhalb von scatter abgeflacht. Die Ausnahme ist c, das nur abgeflacht wird, wenn seine Größe mit der von x und y übereinstimmt.
Beispiele für die Verwendung von matplotlib.axes.Axes.scatter#
Histogramm an Streudiagramm ausrichten mit locatable Axes
Darstellung einer Konfidenzellipse eines zweidimensionalen Datensatzes
Indizes aus einer Sammlung mit Polygon-Selektor auswählen