matplotlib.axes.Axes.hexbin#
- Axes.hexbin(x, y, C=None, *, gridsize=100, bins=None, xscale='linear', yscale='linear', extent=None, cmap=None, norm=None, vmin=None, vmax=None, alpha=None, linewidths=None, edgecolors='face', reduce_C_function=<function mean>, mincnt=None, marginals=False, colorizer=None, data=None, **kwargs)[Quelle]#
Erstellt ein 2D-Hexagonal-Binning-Diagramm von Punkten x, y.
Wenn C None ist, wird der Wert des Sechsecks durch die Anzahl der Punkte im Sechseck bestimmt. Andernfalls gibt C Werte an der Koordinate (x[i], y[i]) an. Für jedes Sechseck werden diese Werte mit reduce_C_function reduziert.
- Parameter:
- x, yarray-ähnlich
Die Datenpositionen. x und y müssen die gleiche Länge haben.
- Carray-like, optional
Wenn angegeben, werden diese Werte in den Bins akkumuliert. Andernfalls hat jeder Punkt den Wert 1. Muss die gleiche Länge wie x und y haben.
- gridsizeint oder (int, int), Standard: 100
Wenn eine einzelne Ganzzahl, die Anzahl der Sechsecke in x-Richtung. Die Anzahl der Sechsecke in y-Richtung wird so gewählt, dass die Sechsecke ungefähr regelmäßig sind.
Alternativ, wenn ein Tupel (nx, ny), die Anzahl der Sechsecke in x-Richtung und y-Richtung. In y-Richtung wird entlang vertikal ausgerichteter Sechsecke gezählt, nicht entlang der Zickzack-Ketten von Sechsecken; siehe folgende Abbildung.
Um ungefähr regelmäßige Sechsecke zu erhalten, wählen Sie \(n_x = \sqrt{3}\,n_y\).
- bins'log' oder int oder Sequenz, Standard: None
Diskretisierung der Sechseckwerte.
Wenn None, wird keine Binning angewendet; die Farbe jedes Sechsecks entspricht direkt seinem Zählwert.
Wenn 'log', verwenden Sie eine logarithmische Skala für die Colormap. Intern wird \(log_{10}(i+1)\) verwendet, um die Sechseckfarbe zu bestimmen. Dies ist äquivalent zu
norm=LogNorm().Wenn eine Ganzzahl, teilen Sie die Zählwerte in die angegebene Anzahl von Bins auf und färben Sie die Sechsecke entsprechend.
Wenn eine Sequenz von Werten, die Werte der unteren Grenze der zu verwendenden Bins.
- xscale{'linear', 'log'}, Standard: 'linear'
Verwenden Sie eine lineare oder log10-Skala auf der horizontalen Achse.
- yscale{'linear', 'log'}, Standard: 'linear'
Verwenden Sie eine lineare oder log10-Skala auf der vertikalen Achse.
- mincntint >= 0, Standard: None
Wenn nicht None, zeigen Sie nur Zellen mit mindestens mincnt Punkten in der Zelle an.
- marginalsbool, Standard: False
Wenn marginals True ist, plotten Sie die marginale Dichte als farbkodierte Rechtecke entlang des unteren Rands der x-Achse und des linken Rands der y-Achse.
- extent4-Tupel von float, Standard: None
Die Grenzen der Bins (xmin, xmax, ymin, ymax). Der Standardwert weist die Grenzen basierend auf gridsize, x, y, xscale und yscale zu.
Wenn xscale oder yscale auf 'log' gesetzt ist, werden die Grenzen als Exponenten für eine Potenz von 10 erwartet. Z. B. für x-Grenzen von 1 und 50 im 'linear'-Maßstab und y-Grenzen von 10 und 1000 im 'log'-Maßstab geben Sie (1, 50, 1, 3) ein.
- Gibt zurück:
PolyCollectionEine
PolyCollection, die die hexagonalen Bins definiert.PolyCollection.get_offsetsenthält ein Mx2-Array mit den x-, y-Positionen der M Sechseckzentren in Datenkoordinaten.PolyCollection.get_arrayenthält die Werte der M Sechsecke.
Wenn marginals True ist, werden horizontale und vertikale Balken (beides PolyCollections) als Attribute hbar und vbar an die zurückgegebene Collection angehängt.
- Andere Parameter:
- 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.
- 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.
- 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).- alphafloat zwischen 0 und 1, optional
Der Alpha-Mischwert, zwischen 0 (transparent) und 1 (opak).
- linewidthsfloat, Standard: None
Wenn None, Standard ist
rcParams["patch.linewidth"](Standard:1.0).- edgecolors{'face', 'none', None} oder Farbe, Standard: 'face'
Die Farbe der Sechseckränder. Mögliche Werte sind
'face': Zeichne die Ränder in der gleichen Farbe wie die Füllfarbe.
'none': Keine Ränder werden gezeichnet. Dies kann manchmal zu unschönen, unbemalten Pixeln zwischen den Sechsecken führen.
None: Zeichne Umrisse in der Standardfarbe.
Eine explizite Farbe.
- reduce_C_functioncallable, Standard:
numpy.mean Die Funktion zur Aggregation von C innerhalb der Bins. Sie wird ignoriert, wenn C nicht angegeben ist. Diese muss die Signatur haben
def reduce_C_function(C: array) -> float
Häufig verwendete Funktionen sind
numpy.mean: Durchschnitt der Punktenumpy.sum: Integral der Punktwertenumpy.amax: Wert vom größten Punkt
Standardmäßig werden nur Zellen mit mindestens 1 Punkt reduziert, da einige Reduktionsfunktionen (wie z. B.
numpy.amax) bei leerer Eingabe einen Fehler/eine Warnung ausgeben. Das Ändern von mincnt passt den Grenzwert an, und wenn er auf 0 gesetzt ist, wird die leere Eingabe an die Reduktionsfunktion übergeben.- 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.
- dataindizierbares Objekt, optional
Wenn angegeben, akzeptieren die folgenden Parameter auch einen String
s, der alsdata[s]interpretiert wird, wennsein Schlüssel indataistx, y, C
- **kwargs
PolyCollectionEigenschaften Alle anderen Schlüsselwortargumente werden an
PolyCollectionweitergeleitetEigenschaft
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
AbstractPathEffectliste von array-like
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
liste von array-like
unknown
bool
float
- cmapstr oder
Siehe auch
hist2d2D-Histogramm mit rechteckigen Bins