matplotlib.axes.Axes.imshow#

Axes.imshow(X, cmap=None, norm=None, *, aspect=None, interpolation=None, alpha=None, vmin=None, vmax=None, colorizer=None, origin=None, extent=None, interpolation_stage=None, filternorm=True, filterrad=4.0, resample=None, url=None, data=None, **kwargs)[Quelle]#

Zeigt Daten als Bild an, d.h. auf einem 2D-regulären Raster.

Die Eingabe kann entweder tatsächliche RGB(A)-Daten oder 2D-Skalardaten sein, die als Pseudofarbbild gerendert werden. Zur Anzeige eines Graustufenbildes richten Sie die Farbzuordnung mit den Parametern cmap='gray', vmin=0, vmax=255 ein.

Die Anzahl der zur Darstellung eines Bildes verwendeten Pixel wird durch die Größe der Achsen und die dpi der Abbildung bestimmt. Dies kann zu Aliasing-Artefakten führen, wenn das Bild neu abgetastet wird, da die angezeigte Bildgröße normalerweise nicht mit der Größe von X übereinstimmt (siehe Bild-Neuberechnung). Die Neuberechnung kann über den Parameter interpolation und/oder rcParams["image.interpolation"] (Standard: 'auto') gesteuert werden.

Parameter:
XArray-ähnlich oder PIL-Bild

Die Bilddaten. Unterstützte Array-Formen sind

  • (M, N): Ein Bild mit Skalardaten. Die Werte werden mithilfe von Normalisierung und einer Farbkarte 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 des Bildes.

RGB(A)-Werte außerhalb des Bereichs werden abgeschnitten.

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

Dieser Parameter wird ignoriert, wenn X 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 X RGB(A) ist.

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.

Dieser Parameter wird ignoriert, wenn X RGB(A) ist.

aspect{'equal', 'auto'} oder float oder None, Standard: None

Das Seitenverhältnis der Achsen. Dieser Parameter ist besonders relevant für Bilder, da er bestimmt, ob Datenpixel quadratisch sind.

Dieser Parameter ist eine Abkürzung für den expliziten Aufruf von Axes.set_aspect. Siehe dort für weitere Details.

  • 'equal': Stellt ein Seitenverhältnis von 1 sicher. Pixel sind quadratisch (sofern Pixelgrößen nicht explizit in Datenkoordinaten mit extent als nicht-quadratisch definiert sind).

  • 'auto': Die Achsen bleiben fixiert und das Seitenverhältnis wird angepasst, sodass die Daten in die Achsen passen. Im Allgemeinen führt dies zu nicht-quadratischen Pixeln.

Normalerweise bedeutet None (Standard), rcParams["image.aspect"] (Standard: 'equal') zu verwenden. Wenn das Bild jedoch eine Transformation verwendet, die die Achsendatentransformation nicht enthält, bedeutet None, das Achsenverhältnis überhaupt nicht zu ändern (in diesem Fall rufen Sie Axes.set_aspect direkt auf, falls gewünscht).

interpolationstr, Standard: rcParams["image.interpolation"] (Standard: 'auto')

Die verwendete Interpolationsmethode.

Unterstützte Werte sind 'none', 'auto', 'nearest', 'bilinear', 'bicubic', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric', 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'blackman'.

Die Daten X werden mit der Interpolationsmethode an die Pixelgröße des Bildes auf der Abbildungsoberfläche angepasst, um entweder zu vergrößern oder zu verkleinern.

Wenn interpolation 'none' ist, findet für die ps-, pdf- und svg-Backends keine Verkleinerung oder Vergrößerung statt, und die Bilddaten werden als natives Bild an das Backend übergeben. Beachten Sie, dass verschiedene ps-, pdf- und svg-Viewer diese Rohpixel unterschiedlich anzeigen können. Auf anderen Backends ist 'none' dasselbe wie 'nearest'.

Wenn interpolation der Standardwert 'auto' ist, wird die 'nearest'-Interpolation verwendet, wenn das Bild um mehr als den Faktor drei vergrößert wird (d.h. die Anzahl der Anzeigepixel ist mindestens dreimal so groß wie die Größe des Datenarrays). Wenn die Vergrößerungsrate kleiner als 3 ist oder das Bild verkleinert wird, wird die 'hanning'-Interpolation als Antialiasing-Filter verwendet, es sei denn, das Bild wird zufällig um genau den Faktor zwei oder eins vergrößert.

Siehe Interpolationsverfahren für imshow für einen Überblick über die unterstützten Interpolationsmethoden und Bild-Neuberechnung für eine Diskussion über Bild-Antialiasing.

Einige Interpolationsmethoden erfordern einen zusätzlichen Radiusparameter, der durch filterrad gesetzt werden kann. Zusätzlich wird der Antigrain-Bildgrößenänderungsfilter durch den Parameter filternorm gesteuert.

interpolation_stage{'auto', 'data', 'rgba'}, Standard: 'auto'

Unterstützte Werte

  • 'data': Die Interpolation wird auf den vom Benutzer bereitgestellten Daten durchgeführt. Dies ist nützlich, wenn zwischen Pixeln während der Vergrößerung interpoliert wird.

  • 'rgba': Die Interpolation wird im RGBA-Raum durchgeführt, nachdem die Farbzuordnung angewendet wurde. Dies ist nützlich beim Verkleinern und visuellen Kombinieren von Pixeln.

  • 'auto': Wählt automatisch eine geeignete Interpolationsstufe aus. Dies verwendet 'rgba' beim Verkleinern oder Vergrößern mit einer Rate kleiner als 3 und 'data' beim Vergrößern mit einer höheren Rate.

Siehe Bild-Neuberechnung für eine Diskussion über Bild-Antialiasing.

alphafloat oder Array-ähnlich, optional

Der Alpha-Überblendwert, zwischen 0 (transparent) und 1 (opak). Wenn alpha ein Array ist, werden die Alpha-Überblendwerte Pixel für Pixel angewendet, und alpha muss die gleiche Form wie X haben.

origin{'upper', 'lower'}, Standard: rcParams["image.origin"] (Standard: 'upper')

Platziert den Index [0, 0] des Arrays in der oberen linken oder unteren linken Ecke der Achsen. Die Konvention ('upper', Standard) wird typischerweise für Matrizen und Bilder verwendet.

Beachten Sie, dass die vertikale Achse bei 'lower' nach oben und bei 'upper' nach unten zeigt.

Siehe das Tutorial Origin und extent in imshow für Beispiele und eine detailliertere Beschreibung.

extentFloats (links, rechts, unten, oben), optional

Die Bounding Box in Datenkoordinaten, die das Bild ausfüllen wird. Diese Werte können Einheiten haben und mit den Einheiten der Achsen übereinstimmen. Das Bild wird einzeln entlang von x und y gestreckt, um die Box auszufüllen.

Die Standard-Extent wird durch die folgenden Bedingungen bestimmt. Pixel haben die Einheit Größe in Datenkoordinaten. Ihre Mittelpunkte liegen bei ganzzahligen Koordinaten, und ihre Mittelpunktskoordinaten reichen von 0 bis Spalten-1 horizontal und von 0 bis Zeilen-1 vertikal.

Beachten Sie, dass die Richtung der vertikalen Achse und damit die Standardwerte für oben und unten von origin abhängen.

  • Für origin == 'upper' ist der Standard (-0.5, numcols-0.5, numrows-0.5, -0.5).

  • Für origin == 'lower' ist der Standard (-0.5, numcols-0.5, -0.5, numrows-0.5).

Siehe das Tutorial Origin und extent in imshow für Beispiele und eine detailliertere Beschreibung.

filternormbool, Standard: True

Ein Parameter für den Antigrain-Bildgrößenänderungsfilter (siehe Antigrain-Dokumentation). Wenn filternorm gesetzt ist, normalisiert der Filter ganzzahlige Werte und korrigiert Rundungsfehler. Er tut nichts mit den Quell-Gleitkommawerten, er korrigiert nur ganze Zahlen gemäß der Regel von 1.0, was bedeutet, dass die Summe der Pixelgewichte 1.0 ergeben muss. Die Filterfunktion muss also einen Graphen mit der richtigen Form erzeugen.

filterradfloat > 0, Standard: 4.0

Der Filterradius für Filter, die einen Radiusparameter haben, d.h. wenn die Interpolation eine der folgenden ist: 'sinc', 'lanczos' oder 'blackman'.

resamplebool, Standard: rcParams["image.resample"] (Standard: True)

Wenn True, wird eine vollständige Neuberechnungsmethode verwendet. Wenn False, wird nur dann neu berechnet, wenn das Ausgabebild größer als das Eingabebild ist.

urlstr, optional

Setzt die URL des erstellten AxesImage. Siehe Artist.set_url.

Gibt zurück:
AxesImage
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.

**kwargsArtist properties

Diese Parameter werden an den Konstruktor des AxesImage-Künstler übergeben.

Siehe auch

matshow

Zeichnet eine Matrix oder ein Array als Bild.

Anmerkungen

Sofern nicht extent verwendet wird, befinden sich Pixelmittelpunkte bei ganzzahligen Koordinaten. Mit anderen Worten: Der Ursprung fällt mit dem Mittelpunkt des Pixels (0, 0) zusammen.

Es gibt zwei gängige Darstellungen für RGB-Bilder mit einem Alpha-Kanal

  • Gerades (nicht zugeordnetes) Alpha: R-, G- und B-Kanäle stellen die Farbe des Pixels dar, ohne seine Opazität zu berücksichtigen.

  • Vormultipliziertes (zugeordnetes) Alpha: R-, G- und B-Kanäle stellen die Farbe des Pixels dar, angepasst an seine Opazität durch Multiplikation.

imshow erwartet RGB-Bilder im geraden (nicht zugeordneten) Alpha-Format.

Beispiele für die Verwendung von matplotlib.axes.Axes.imshow#

pyplot Animation

pyplot Animation

Animiertes Bild mit einer vorkompilierten Bildliste

Animiertes Bild mit einer vorkompilierten Bildliste

Verankerter Richtungspfeil

Verankerter Richtungspfeil

Achsenraster-Demo

Achsenraster-Demo

Achsenraster2

Achsenraster2

HBoxDivider und VBoxDivider Demo

HBoxDivider und VBoxDivider Demo

Farbleiste mit Achsen-Teiler

Farbleiste mit Achsen-Teiler

Position und Größe einer Farbleiste mit Inset Axes steuern

Position und Größe einer Farbleiste mit Inset Axes steuern

Inset Locator Demo 2

Inset Locator Demo 2

Einfaches ImageGrid

Einfaches ImageGrid

Einfaches ImageGrid 2

Einfaches ImageGrid 2

Farbleiste

Farbleiste

Farbskalen-Referenz

Farbskalen-Referenz

Eine Farbskala aus einer Liste von Farben erstellen

Eine Farbskala aus einer Liste von Farben erstellen

Scroll-Ereignis

Scroll-Ereignis

Pick-Ereignis Demo

Pick-Ereignis Demo

Viewlims

Viewlims

Affine Transformation eines Bildes

Affine Transformation eines Bildes

Barcode

Barcode

Interaktive Anpassung des Farbskalenbereichs

Interaktive Anpassung des Farbskalenbereichs

Kontur Demo

Kontur Demo

Konturbild

Konturbild

Annotierte Heatmap

Annotierte Heatmap

Bild-Resampling

Bild-Resampling

Bilder mit Patches beschneiden

Bilder mit Patches beschneiden

Viele Möglichkeiten, Bilder darzustellen

Viele Möglichkeiten, Bilder darzustellen

Bild mit maskierten Werten

Bild mit maskierten Werten

Transparenz mit Farbe in 2D-Bildern mischen

Transparenz mit Farbe in 2D-Bildern mischen

Modifizierung des Koordinatenformats

Modifizierung des Koordinatenformats

Interpolationen für imshow

Interpolationen für imshow

Bilder überlagern mit Alpha-Blending

Bilder überlagern mit Alpha-Blending

Matrizen mit matshow visualisieren

Matrizen mit matshow visualisieren

Mehrere Bilder mit einer Farbleiste

Mehrere Bilder mit einer Farbleiste

pcolor-Bilder

pcolor-Bilder

Schattierungsbeispiel

Schattierungsbeispiel

Balkendiagramm mit Farbverläufen

Balkendiagramm mit Farbverläufen

Patheffect Demo

Patheffect Demo

Beschattierte & Leistungsnormalisierte Darstellung

Beschattierte & Leistungsnormalisierte Darstellung

Topografisches Hillshading

Topografisches Hillshading

Achsen-Box-Seitenverhältnis

Achsen-Box-Seitenverhältnis

Zoom-Bereich in der Achsen-Inset

Zoom-Bereich in der Achsen-Inset

Text als Pfad verwenden

Text als Pfad verwenden

Farbleisten-Tick-Beschriftung

Farbleisten-Tick-Beschriftung

imshow(Z)

imshow(Z)

Leitfaden für eingeschränkte Layouts

Leitfaden für eingeschränkte Layouts

Tight layout guide

Tight layout guide

Colormaps in Matplotlib erstellen

Colormaps in Matplotlib erstellen

Colormaps in Matplotlib auswählen

Colormaps in Matplotlib auswählen