matplotlib.pyplot.pcolormesh #

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

Cree un diagrama de pseudocolor con una cuadrícula rectangular no regular.

Firma de llamada:

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

X e Y se pueden usar para especificar las esquinas de los cuadriláteros.

Insinuación

pcolormeshes similar a pcolor. Es mucho más rápido y preferido en la mayoría de los casos. Para obtener una discusión detallada sobre las diferencias, consulte Diferencias entre pcolor() y pcolormesh() .

Parámetros :
C 2D tipo matriz

Los valores mapeados en color. El mapeo de colores está controlado por cmap , norm , vmin y vmax .

X, Y tipo matriz, opcional

Las coordenadas de las esquinas de los cuadriláteros de una 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])

Tenga en cuenta que el índice de la columna corresponde a la coordenada x y el índice de la fila corresponde a y. Para obtener más información, consulte la sección Notas a continuación.

Si shading='flat'las dimensiones de X e Y deben ser uno más grandes que las de C , y el cuadrilátero está coloreado debido al valor en . Si X , Y y C tienen las mismas dimensiones, se generará una advertencia y se ignorarán la última fila y la última columna de C.C[i, j]

Si shading='nearest'o 'gouraud', las dimensiones de X e Y deben ser las mismas que las de C (si no, se generará un ValueError). Porque 'nearest'el color está centrado en . Para , se realiza una interpolación suave entre las esquinas del cuadrilátero.C[i, j](X[i, j], Y[i, j])'gouraud'

Si X y/o Y son matrices 1-D o vectores de columna, se expandirán según sea necesario en las matrices 2D apropiadas, formando una cuadrícula rectangular.

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.

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 .

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

edgecolors {'ninguno', Ninguno, 'cara', color, secuencia de colores}, opcional

El color de los bordes. El valor predeterminado es 'ninguno'. Valores posibles:

  • 'ninguno' o '': Sin borde.

  • Ninguno : rcParams["patch.edgecolor"](predeterminado: 'black') se utilizará. Tenga en cuenta que actualmente rcParams["patch.force_edgecolor"](predeterminado: False) tiene que ser Verdadero para que esto funcione.

  • 'cara': usa el color de la cara adyacente.

  • Un color o secuencia de colores establecerá el color del borde.

La forma singular edgecolor funciona como un alias.

flotante alfa , predeterminado: Ninguno

El valor de fusión alfa, entre 0 (transparente) y 1 (opaco).

sombreado {'plano', 'más cercano', 'gouraud', 'auto'}, opcional

El estilo de relleno para el cuadrilátero; el valor predeterminado es 'plano' o rcParams["pcolor.shading"](predeterminado: 'auto'). Valores posibles:

  • 'plano': se utiliza un color sólido para cada quad. El color del cuadrilátero (i, j), (i+1, j), (i, j+1), (i+1, j+1) viene dado por . Las dimensiones de X e Y deben ser uno mayor que las de C ; si son iguales a C , se genera una advertencia de desaprobación y se eliminan la última fila y columna de C .C[i, j]

  • 'más cercano': Cada punto de la cuadrícula tendrá un color centrado en él, extendiéndose a mitad de camino entre los centros de la cuadrícula adyacentes. Las dimensiones de X e Y deben ser las mismas que las de C.

  • 'gouraud': Cada cuadrilátero estará sombreado con Gouraud: El color de las esquinas (i', j') viene dado por . Los valores de color del área intermedia se interpolan a partir de los valores de las esquinas. Las dimensiones de X e Y deben ser las mismas que las de C. Cuando se utiliza el sombreado Gouraud, se ignora edgecolors .C[i', j']

  • 'auto': elija 'plano' si las dimensiones de X e Y son más grandes que C . Elija 'más cercano' si las dimensiones son las mismas.

Ver cuadrículas de pcolormesh y sombreado para más descripción.

snap bool, predeterminado: falso

Ya sea para ajustar la malla a los límites de píxeles.

bool rasterizado , opcional

Rasterice la pcolormesh al dibujar gráficos vectoriales. Esto puede acelerar la representación y producir archivos más pequeños para grandes conjuntos de datos. Véase también Rasterización para gráficos vectoriales .

Devoluciones :
matplotlib.collections.QuadMesh
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).

**kwargs

Además, se permiten los siguientes argumentos. Se pasan al QuadMeshconstructor:

Propiedad

Descripción

agg_filter

una función de filtro, que toma una matriz flotante (m, n, 3) y un valor de ppp, y devuelve una matriz (m, n, 3) y dos compensaciones desde la esquina inferior izquierda de la imagen

alpha

tipo matriz o escalar o ninguno

animated

bool

antialiasedo aa o suavizado

bool o lista de bools

array

(M, N) en forma de matriz o M*N en forma de matriz

capstyle

CapStyleo {'trasero', 'proyectando', 'redondo'}

clim

(vmin: flotante, vmax: flotante)

clip_box

Bbox

clip_on

bool

clip_path

Parchear o (Ruta, Transformar) o Ninguno

cmap

Colormapo str o Ninguno

color

color o lista de tuplas rgba

edgecoloro ec o edgecolors

color o lista de colores o 'cara'

facecoloro colores de cara o fc

color o lista de colores

figure

Figure

gid

calle

hatch

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

in_layout

bool

joinstyle

JoinStyleo {'inglete', 'redondo', 'bisel'}

label

objeto

linestyleo guiones o estilos de línea o ls

str o tuple o lista de los mismos

linewidtho anchos de línea o lw

flotador o lista de flotadores

mouseover

bool

norm

Normalizeo str o Ninguno

offset_transformo transOffset

desconocido

offsets

(N, 2) o (2,) en forma de matriz

path_effects

AbstractPathEffect

picker

Ninguno o bool o flotante o invocable

pickradius

desconocido

rasterized

bool

sketch_params

(escala: flotante, longitud: flotante, aleatoriedad: flotante)

snap

booleano o ninguno

transform

Transform

url

calle

urls

lista de str o Ninguno

visible

bool

zorder

flotar

Ver también

pcolor

Una implementación alternativa con características ligeramente diferentes. Para obtener una discusión detallada sobre las diferencias, consulte Diferencias entre pcolor() y pcolormesh() .

imshow

Si X e Y son equidistantes, imshowpuede ser una alternativa más rápida.

notas

Matrices enmascaradas

C puede ser una matriz enmascarada. Si está enmascarado, el cuadrilátero correspondiente será transparente. No se admite el enmascaramiento de X e Y. Úselo si necesita esta funcionalidad.C[i, j]pcolor

Orientación de cuadrícula

La orientación de la cuadrícula sigue la convención de matriz estándar: una matriz C con forma (nrows, ncolumns) se traza con el número de columna como X y el número de fila como Y .

Diferencias entre pcolor() y pcolormesh()

Ambos métodos se utilizan para crear un diagrama de pseudocolor de una matriz 2D utilizando cuadriláteros.

La principal diferencia radica en el objeto creado y el manejo de datos internos: mientras pcolordevuelve un PolyCollection, pcolormesh devuelve un QuadMesh. Este último está más especializado para el propósito dado y, por lo tanto, es más rápido. Casi siempre se debe preferir.

También hay una ligera diferencia en el manejo de matrices enmascaradas. Ambos pcolory pcolormeshadmiten matrices enmascaradas para C . Sin embargo , solo pcoloradmite matrices enmascaradas para X e Y. La razón radica en el manejo interno de los valores enmascarados. pcoloromite los respectivos polígonos de PolyCollection. pcolormeshestablece el color de la cara de los elementos enmascarados en transparente. Puedes ver la diferencia cuando usas edgecolors. Si bien todos los bordes se dibujan independientemente del enmascaramiento en QuadMesh, el borde entre dos cuadriláteros enmascarados adyacentes pcolorno se dibuja porque los polígonos correspondientes no existen en PolyCollection.

Otra diferencia es la compatibilidad con el sombreado Gouraud en pcolormesh, que no está disponible con pcolor.