matplotlib.pyplot.pcolormesh#

matplotlib.pyplot.pcolormesh(*args, alpha=None, norm=None, cmap=None, vmin=None, vmax=None, colorizer=None, shading=None, antialiased=False, data=None, **kwargs)[Quelle]#

Erstellt einen Pseudofarben-Plot mit einem nicht-regulären rechteckigen Gitter.

Aufruf-Signatur

pcolormesh([X, Y,] C, /, **kwargs)

X und Y können verwendet werden, um die Ecken der Vierecke festzulegen.

Die Argumente X, Y, C sind nur positionsabhängig.

Hinweis

pcolormesh ist ähnlich wie pcolor. Es ist viel schneller und in den meisten Fällen vorzuziehen. Eine detaillierte Diskussion der Unterschiede finden Sie unter Unterschiede zwischen pcolor() und pcolormesh().

Parameter:
Carray-artig

Die Gitterdaten. Unterstützte Array-Formen sind

  • (M, N) oder M*N: ein Gitter mit Skalardaten. Die Werte werden über Normalisierung und eine Farbpalette auf Farben abgebildet. Siehe Parameter norm, cmap, vmin, vmax.

  • (M, N, 3): Ein Bild mit RGB-Werten (0-1 Float oder 0-255 Integer).

  • (M, N, 4): Ein Bild mit RGBA-Werten (0-1 Float oder 0-255 Integer), d.h. einschließlich Transparenz.

Die ersten beiden Dimensionen (M, N) definieren die Zeilen und Spalten der Gitterdaten.

X, Yarray-ähnlich, optional

Die Koordinaten der Ecken von Vierecken eines pcolormesh

(X[i+1, j], Y[i+1, j])       (X[i+1, j+1], Y[i+1, j+1])
                      ●╶───╴●
                      │     │
                      ●╶───╴●
    (X[i, j], Y[i, j])       (X[i, j+1], Y[i, j+1])

Beachten Sie, dass der Spaltenindex der x-Koordinate und der Zeilenindex der y-Koordinate entspricht. Details finden Sie im Abschnitt Hinweise unten.

Wenn shading='flat', sollten die Dimensionen von X und Y um eins größer sein als die von C, und das Viereck wird aufgrund des Werts bei C[i, j] gefärbt. Wenn X, Y und C gleiche Dimensionen haben, wird eine Warnung ausgegeben und die letzte Zeile und Spalte von C werden ignoriert.

Wenn shading='nearest' oder 'gouraud' ist, müssen die Dimensionen von X und Y mit denen von C übereinstimmen (andernfalls wird ein ValueError ausgelöst). Bei 'nearest' ist die Farbe C[i, j] auf (X[i, j], Y[i, j]) zentriert. Bei 'gouraud' wird eine glatte Interpolation zwischen den Ecken des Vierecks durchgeführt.

Wenn X und/oder Y 1D-Arrays oder Spaltenvektoren sind, werden sie nach Bedarf zu den entsprechenden 2D-Arrays erweitert und bilden ein rechteckiges Gitter.

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).

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.

edgecolors{'none', None, 'face', Farbe, Farbsequenz}, optional

Die Farbe der Kanten. Standard ist 'none'. Mögliche Werte

  • 'none' oder '': Keine Kante.

  • None: Es wird rcParams["patch.edgecolor"] (Standard: 'black') verwendet. Beachten Sie, dass rcParams["patch.force_edgecolor"] (Standard: False) derzeit auf True gesetzt sein muss, damit dies funktioniert.

  • 'face': Verwendet die Farbe der benachbarten Fläche.

  • Eine einzelne Farbe oder eine Sequenz von Farben setzt die Kantenfarbe.

Die Singularform edgecolor funktioniert als Alias.

alphafloat, Standard: None

Der Alpha-Mischwert, zwischen 0 (transparent) und 1 (opak).

shading{'flat', 'nearest', 'gouraud', 'auto'}, optional

Der Füllstil für das Viereck; Standardwert ist rcParams["pcolor.shading"] (Standard: 'auto'). Mögliche Werte

  • 'flat': Für jedes Viereck wird eine einheitliche Farbe verwendet. Die Farbe des Vierecks (i, j), (i+1, j), (i, j+1), (i+1, j+1) wird durch C[i, j] bestimmt. Die Dimensionen von X und Y sollten um eins größer sein als die von C; wenn sie die gleichen wie C sind, wird eine Deprecation-Warnung ausgegeben und die letzte Zeile und Spalte von C werden verworfen.

  • 'nearest': Jeder Gitterpunkt erhält eine Farbe, die auf ihn zentriert ist und sich bis zur Hälfte zwischen den angrenzenden Gittermittelpunkten erstreckt. Die Dimensionen von X und Y müssen mit denen von C übereinstimmen.

  • 'gouraud': Jedes Viereck wird Gouraud-schattiert: Die Farben der Ecken (i', j') werden von C[i', j'] gegeben. Die Farbwerte des dazwischenliegenden Bereichs werden aus den Eckwerten interpoliert. Die Dimensionen von X und Y müssen mit denen von C übereinstimmen. Wenn Gouraud-Schattierung verwendet wird, wird edgecolors ignoriert.

  • 'auto': Wählt 'flat', wenn die Dimensionen von X und Y um eins größer sind als die von C. Wählt 'nearest', wenn die Dimensionen gleich sind.

Siehe pcolormesh-Gitter und Schattierung für weitere Beschreibungen.

snapbool, Standard: False

Ob das Mesh auf Pixelgrenzen ausgerichtet werden soll.

rasterizedbool, optional

Rasterisiert das pcolormesh beim Zeichnen von Vektorgrafiken. Dies kann das Rendering beschleunigen und kleinere Dateien für große Datensätze erzeugen. Siehe auch Rasterisierung für Vektorgrafiken.

Gibt zurück:
matplotlib.collections.QuadMesh
Andere Parameter:
dataindizierbares Objekt, optional

Wenn angegeben, akzeptieren alle Parameter auch eine Zeichenkette s, die als data[s] interpretiert wird, wenn s ein Schlüssel in data ist.

**kwargs

Zusätzlich sind die folgenden Argumente erlaubt. Sie werden an den QuadMesh-Konstruktor weitergereicht

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-like

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

picker

None oder bool oder float oder callable

pickradius

float

rasterized

bool

sketch_params

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

snap

bool oder None

transform

Transform

url

str

urls

Liste von str oder None

visible

bool

zorder

float

Siehe auch

pcolor

Eine alternative Implementierung mit leicht unterschiedlichen Funktionen. Eine detaillierte Diskussion der Unterschiede finden Sie unter Unterschiede zwischen pcolor() und pcolormesh().

imshow

Wenn X und Y jeweils äquidistant sind, kann imshow eine schnellere Alternative sein.

Anmerkungen

Hinweis

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

Maskierte Arrays

C kann ein maskiertes Array sein. Wenn C[i, j] maskiert ist, ist das entsprechende Viereck transparent. Maskierung von X und Y wird nicht unterstützt. Verwenden Sie pcolor, wenn Sie diese Funktionalität benötigen.

Gitterorientierung

Die Gitterorientierung folgt der Standard-Matrixkonvention: Ein Array C mit der Form (Anzahl Zeilen, Anzahl Spalten) wird mit der Spaltennummer als X und der Zeilennummer als Y geplottet.

Unterschiede zwischen pcolor() und pcolormesh()

Beide Methoden werden verwendet, um eine Pseudofarbdarstellung eines 2D-Arrays mit Vierecken zu erstellen.

Der Hauptunterschied liegt im erzeugten Objekt und der internen Datenverarbeitung: Während pcolor ein PolyQuadMesh zurückgibt, gibt pcolormesh ein QuadMesh zurück. Letzteres ist spezialisierter für den gegebenen Zweck und daher schneller. Es sollte fast immer bevorzugt werden.

Es gibt auch einen geringfügigen Unterschied in der Handhabung maskierter Arrays. Sowohl pcolor als auch pcolormesh unterstützen maskierte Arrays für C. Nur pcolor unterstützt jedoch maskierte Arrays für X und Y. Der Grund liegt in der internen Handhabung der maskierten Werte. pcolor lässt die entsprechenden Polygone aus dem PolyQuadMesh weg. pcolormesh setzt die Füllfarbe der maskierten Elemente auf transparent. Diesen Unterschied erkennt man, wenn man edgecolors verwendet. Während bei einem QuadMesh alle Kanten unabhängig von der Maskierung gezeichnet werden, wird die Kante zwischen zwei benachbarten maskierten Vierecken bei pcolor nicht gezeichnet, da die entsprechenden Polygone im PolyQuadMesh nicht existieren. Da PolyQuadMesh jedes einzelne Polygon zeichnet, unterstützt es auch die Anwendung von Schraffuren und Linienstilen auf die Sammlung.

Ein weiterer Unterschied ist die Unterstützung der Gouraud-Schattierung in pcolormesh, die bei pcolor nicht verfügbar ist.

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

pcolor-Bilder

pcolor-Bilder

pcolormesh-Gitternetze und Schattierung

pcolormesh-Gitternetze und Schattierung

pcolormesh

pcolormesh

QuadMesh Demo

QuadMesh Demo

Rasterisierung für Vektorgrafiken

Rasterisierung für Vektorgrafiken

Zeitreihen-Histogramm

Zeitreihen-Histogramm