matplotlib.pyplot.imshow #

matplotlib.pyplot. imshow ( X , cmap = Ninguno , norm = Ninguno , * , aspecto = Ninguno , interpolación = Ninguno , alfa = Ninguno , vmin = Ninguno , vmax = Ninguno , origen = Ninguno , extensión = Ninguno , interpolation_stage = Ninguno , filternorm = True ,filterrad = 4.0 , remuestreo = Ninguno , url = Ninguno , datos = Ninguno , ** kwargs ) [fuente] #

Muestre los datos como una imagen, es decir, en un ráster regular 2D.

La entrada puede ser datos RGB(A) reales o datos escalares 2D, que se representarán como una imagen pseudocolor. Para mostrar una imagen en escala de grises, configure el mapa de colores usando los parámetros .cmap='gray', vmin=0, vmax=255

El número de píxeles utilizados para renderizar una imagen se establece por el tamaño de los ejes y los dpi de la figura. Esto puede dar lugar a artefactos de aliasing cuando se vuelve a muestrear la imagen porque el tamaño de la imagen mostrada normalmente no coincidirá con el tamaño de X (consulte Suavizado de imagen ). El remuestreo se puede controlar a través del parámetro de interpolaciónrcParams["image.interpolation"] y/o (predeterminado: 'antialiased').

Parámetros :
Imagen similar a una matriz X o PIL

Los datos de la imagen. Las formas de matriz admitidas son:

  • (M, N): una imagen con datos escalares. Los valores se asignan a colores mediante la normalización y un mapa de colores. Ver parámetros norma , cmap , vmin , vmax .

  • (M, N, 3): una imagen con valores RGB (0-1 flotante o 0-255 int).

  • (M, N, 4): una imagen con valores RGBA (0-1 flotante o 0-255 int), es decir, que incluye transparencia.

Las dos primeras dimensiones (M, N) definen las filas y columnas de la imagen.

Los valores RGB(A) fuera de rango se recortan.

cmap str o Colormap, predeterminado: rcParams["image.cmap"](predeterminado: 'viridis')

La instancia de mapa de colores o el nombre de mapa de colores registrado que se utiliza para asignar datos escalares a colores.

Este parámetro se ignora si X es RGB(A).

norma str o Normalize, opcional

El método de normalización usado para escalar datos escalares al rango [0, 1] antes de mapear a colores usando cmap . De forma predeterminada, se utiliza una escala lineal, asignando el valor más bajo a 0 y el más alto a 1.

Si se da, puede ser uno de los siguientes:

  • Una instancia de Normalizeo una de sus subclases (consulte Normalización de mapa de colores ).

  • Un nombre de escala, es decir, uno de "linear", "log", "symlog", "logit", etc. Para obtener una lista de las escalas disponibles, llame al matplotlib.scale.get_scale_names(). NormalizeEn ese caso, se genera e instancia dinámicamente una subclase adecuada .

Este parámetro se ignora si X es RGB(A).

vmin, vmax flotante, opcional

Cuando se usan datos escalares y no hay una norma explícita , vmin y vmax definen el rango de datos que cubre el mapa de colores. De forma predeterminada, el mapa de colores cubre el rango de valores completo de los datos proporcionados. Es un error usar vmin / vmax cuando se proporciona una instancia de norma (pero es aceptable usar un nombre de norma junto con vmin / vmax ).str

Este parámetro se ignora si X es RGB(A).

aspecto {'igual', 'automático'} o flotante, predeterminado: rcParams["image.aspect"](predeterminado: 'equal')

La relación de aspecto de los ejes. Este parámetro es particularmente relevante para las imágenes, ya que determina si los píxeles de datos son cuadrados.

Este parámetro es un atajo para llamar explícitamente a Axes.set_aspect. Ver allí para más detalles.

  • 'igual': garantiza una relación de aspecto de 1. Los píxeles serán cuadrados (a menos que los tamaños de píxeles se establezcan explícitamente como no cuadrados en las coordenadas de datos mediante la extensión ).

  • 'auto': los ejes se mantienen fijos y el aspecto se ajusta para que los datos encajen en los ejes. En general, esto dará como resultado píxeles no cuadrados.

cadena de interpolación , por defecto: (por defecto: )rcParams["image.interpolation"]'antialiased'

El método de interpolación utilizado.

Los valores admitidos son 'ninguno', 'antialiased', 'más cercano', 'bilineal', 'bicúbico', 'spline16', 'spline36', 'hanning', 'hamming', 'hermite', 'kaiser', 'quadric' , 'catrom', 'gaussian', 'bessel', 'mitchell', 'sinc', 'lanczos', 'blackman'.

Si la interpolación es 'ninguna', entonces no se realiza ninguna interpolación en los backends Agg, ps, pdf y svg. Otros backends volverán a 'más cercano'. Tenga en cuenta que la mayoría de los renderizadores SVG realizan la interpolación en el renderizado y que el método de interpolación predeterminado que implementan puede diferir.

Si la interpolación es el 'antialiasing' predeterminado, entonces se usa la interpolación 'más cercana' si la imagen se muestrea en más de un factor de tres (es decir, el número de píxeles de visualización es al menos tres veces el tamaño de la matriz de datos). Si la tasa de sobremuestreo es menor que 3, o si la imagen está submuestreada, entonces se usa la interpolación 'hanning' para actuar como un filtro anti-aliasing, a menos que la imagen esté sobremuestreada exactamente por un factor de dos o uno.

Consulte Interpolaciones para imshow para obtener una descripción general de los métodos de interpolación admitidos y Suavizado de imágenes para obtener una explicación del suavizado de imágenes.

Algunos métodos de interpolación requieren un parámetro de radio adicional, que se puede establecer mediante filterrad . Además, el filtro de cambio de tamaño de imagen antigranulado está controlado por el parámetro filternorm .

interpolation_stage {'datos', 'rgba'}, predeterminado: 'datos'

Si es 'datos', la interpolación se realiza sobre los datos proporcionados por el usuario. Si es 'rgba', la interpolación se realiza después de aplicar el mapeo de colores (interpolación visual).

flotante alfa o tipo matriz, opcional

El valor de fusión alfa, entre 0 (transparente) y 1 (opaco). Si alpha es una matriz, los valores de combinación alfa se aplican píxel por píxel y alpha debe tener la misma forma que X .

origen {'superior', 'inferior'}, predeterminado: rcParams["image.origin"](predeterminado 'upper':)

Coloque el índice [0, 0] de la matriz en la esquina superior izquierda o inferior izquierda de los ejes. La convención (predeterminada) 'superior' se usa normalmente para matrices e imágenes.

Tenga en cuenta que el eje vertical apunta hacia arriba para 'inferior' pero hacia abajo para 'superior'.

Consulte el tutorial de origen y extensión en imshow para ver ejemplos y una descripción más detallada.

extensión flotante (izquierda, derecha, abajo, arriba), opcional

El cuadro delimitador en las coordenadas de datos que llenará la imagen. La imagen se estira individualmente a lo largo de x e y para llenar el cuadro.

La extensión predeterminada está determinada por las siguientes condiciones. Los píxeles tienen tamaño de unidad en coordenadas de datos. Sus centros están en coordenadas enteras, y sus coordenadas centrales van de 0 a columnas-1 horizontalmente y de 0 a filas-1 verticalmente.

Tenga en cuenta que la dirección del eje vertical y, por lo tanto, los valores predeterminados para arriba y abajo dependen del origen :

  • Porque el valor predeterminado es .origin == 'upper'(-0.5, numcols-0.5, numrows-0.5, -0.5)

  • Porque el valor predeterminado es .origin == 'lower'(-0.5, numcols-0.5, -0.5, numrows-0.5)

Consulte el tutorial de origen y extensión en imshow para ver ejemplos y una descripción más detallada.

filternorm bool, por defecto: Verdadero

Un parámetro para el filtro de cambio de tamaño de imagen antigrain (consulte la documentación antigrain). Si se establece filternorm , el filtro normaliza los valores enteros y corrige los errores de redondeo. No hace nada con los valores de punto flotante de origen, solo corrige números enteros de acuerdo con la regla de 1.0, lo que significa que cualquier suma de pesos de píxeles debe ser igual a 1.0. Entonces, la función de filtro debe producir un gráfico de la forma adecuada.

filterrad float > 0, por defecto: 4.0

El radio del filtro para filtros que tienen un parámetro de radio, es decir, cuando la interpolación es una de: 'sinc', 'lanczos' o 'blackman'.

bool de remuestreo , predeterminado: (predeterminado: )rcParams["image.resample"]True

Cuando sea True , use un método de remuestreo completo. Cuando es False , solo se vuelve a muestrear cuando la imagen de salida es más grande que la imagen de entrada.

cadena de URL , opcional

Establezca la URL del archivo creado AxesImage. ver Artist.set_url_

Devoluciones :
AxesImage
Otros parámetros :
objeto indexable de datos , opcional

Si se proporciona, todos los parámetros también aceptan una cadena s, que se interpreta como data[s](a menos que esto genere una excepción).

** Artistpropiedades de los kwargs

Estos parámetros se transmiten al constructor del AxesImageartista.

Ver también

matshow

Trace una matriz o una matriz como una imagen.

notas

A menos que se utilice la extensión , los centros de píxeles se ubicarán en coordenadas enteras. En otras palabras: el origen coincidirá con el centro del píxel (0, 0).

Hay dos representaciones comunes para imágenes RGB con un canal alfa:

  • Alfa recto (no asociado): los canales R, G y B representan el color del píxel, sin tener en cuenta su opacidad.

  • Alfa premultiplicado (asociado): los canales R, G y B representan el color del píxel, ajustado por su opacidad por multiplicación.

imshowespera que las imágenes RGB adopten la representación alfa directa (no asociada).

Ejemplos usando matplotlib.pyplot.imshow#

Imágenes de capas

Imágenes de capas

Imágenes de capas
Espaciamientos y márgenes de las subparcelas

Espaciamientos y márgenes de las subparcelas

Espaciamientos y márgenes de las subparcelas
delfines

delfines

delfines
hipervínculos

hipervínculos

hipervínculos
Tutorial de imagen

Tutorial de imagen

Tutorial de imagen
Guía de diseño ajustado

Guía de diseño ajustado

Guía de diseño ajustado