matplotlib.pyplot.hexbin#

matplotlib.pyplot.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)[Quellcode anzeigen]#

Erstellt ein 2D-Hexagonal-Binning-Diagramm von Punkten x, y.

Wenn C None ist, wird der Wert des Hexagons durch die Anzahl der Punkte im Hexagon bestimmt. Andernfalls gibt C Werte an der Koordinate (x[i], y[i]) an. Für jedes Hexagon 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 ein einzelner int, ist dies die Anzahl der Hexagone in x-Richtung. Die Anzahl der Hexagone in y-Richtung wird so gewählt, dass die Hexagone annähernd regelmäßig sind.

Alternativ, wenn ein Tupel (nx, ny), ist dies die Anzahl der Hexagone in x-Richtung und y-Richtung. In y-Richtung wird entlang vertikal ausgerichteter Hexagone gezählt, nicht entlang der Zickzack-Ketten von Hexagonen; siehe folgende Abbildung.

(Quellcode, 2x.png, png)

Um annähernd regelmäßige Hexagone zu erhalten, wählen Sie \(n_x = \sqrt{3}\,n_y\).

bins'log' oder int oder Sequenz, Standard: None

Diskretisierung der Hexagonwerte.

  • Wenn None, wird keine Binning angewendet; die Farbe jedes Hexagons entspricht direkt seinem Zählwert.

  • Wenn 'log', wird eine logarithmische Skala für die Colormap verwendet. Intern wird \(log_{10}(i+1)\) verwendet, um die Hexagonfarbe zu bestimmen. Dies ist äquivalent zu norm=LogNorm().

  • Wenn ein Integer, werden die Zählwerte in die angegebene Anzahl von Bins aufgeteilt und die Hexagone entsprechend eingefärbt.

  • Wenn eine Sequenz von Werten, sind dies 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, werden nur Zellen mit mindestens mincnt Punkten in der Zelle angezeigt.

marginalsbool, Standard: False

Wenn marginals True ist, werden die marginalen Dichten als eingefärbte Rechtecke am unteren Rand der x-Achse und links von der y-Achse geplottet.

extent4-Tupel von float, Standard: None

Die Grenzen der Bins (xmin, xmax, ymin, ymax). Der Standardwert ordnet 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 in 'linear'-Skala und y-Grenzen von 10 und 1000 in 'log'-Skala, geben Sie (1, 50, 1, 3) ein.

Gibt zurück:
PolyCollection

Eine PolyCollection, die die hexagonale Binning definiert.

Wenn marginals True ist, werden horizontale Balken und vertikale Balken (beides PolyCollections) als Attribute hbar und vbar an die Rückgabesammlungen 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

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, wird standardmäßig rcParams["patch.linewidth"] (Standard: 1.0) verwendet.

edgecolors{'face', 'none', None} oder Farbe, Standard: 'face'

Die Farbe der Hexagonrä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 Hexagonen 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

Standardmäßig werden nur Zellen mit mindestens 1 Punkt reduziert, da einige Reduktionsfunktionen (wie numpy.amax) bei leerer Eingabe Fehler/Warnungen ausgeben. Das Ändern von mincnt passt den Grenzwert an und wenn auf 0 gesetzt, wird die leere Eingabe an die Reduktionsfunktion übergeben.

colorizerColorizer oder 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 als data[s] interpretiert wird, wenn s ein Schlüssel in data ist

x, y, C

**kwargsPolyCollection Eigenschaften

Alle anderen Schlüsselwortargumente werden an PolyCollection weitergeleitet

Eigenschaft

Beschreibung

agg_filter

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

alpha

Array-ähnlich oder float oder None

animated

bool

antialiased oder aa oder antialiaseds

bool oder Liste von bools

Array

Array-ähnlich oder None

capstyle

CapStyle oder {'butt', 'projecting', 'round'}

clim

(vmin: float, vmax: float)

clip_box

BboxBase oder None

clip_on

bool

clip_path

Patch oder (Path, Transform) oder None

cmap

Colormap oder str oder None

color

Farbe oder Liste von RGBA-Tupeln

edgecolor oder ec oder edgecolors

Farbe oder Liste von Farben oder 'face'

facecolor oder facecolors oder fc

Farbe oder Liste von Farben

figure

Figure oder SubFigure

gid

str

Muster (hatch)

{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}

hatch_linewidth

unknown

in_layout

bool

joinstyle

JoinStyle oder {'miter', 'round', 'bevel'}

label

object

linestyle oder dashes oder linestyles oder ls

str oder Tupel oder Liste davon

linewidth oder linewidths oder lw

float oder Liste von floats

mouseover

bool

norm

Normalize oder str oder None

offset_transform oder transOffset

Transform

offsets

(N, 2) oder (2,) Array-ähnlich

path_effects

Liste von AbstractPathEffect

paths

liste von array-like

picker

None oder bool oder float oder callable

pickradius

float

rasterized

bool

sizes

numpy.ndarray oder None

sketch_params

(scale: float, length: float, randomness: float)

snap

bool oder None

transform

Transform

url

str

urls

Liste von str oder None

verts

liste von array-like

verts_and_codes

unknown

visible

bool

zorder

float

Siehe auch

hist2d

2D-Histogramm mit rechteckigen Bins

Anmerkungen

Hinweis

Dies ist der pyplot-Wrapper für axes.Axes.hexbin.

Beispiele für die Verwendung von matplotlib.pyplot.hexbin#

Hexagonales biniertes Diagramm

Hexagonales biniertes Diagramm