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
pcolormesh
es similar apcolor
. 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
Normalize
o 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()
.Normalize
En 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 actualmentercParams["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 :
- Otros parámetros :
- objeto indexable de datos , opcional
Si se proporciona, todos los parámetros también aceptan una cadena
s
, que se interpreta comodata[s]
(a menos que esto genere una excepción).- **kwargs
Además, se permiten los siguientes argumentos. Se pasan al
QuadMesh
constructor:Propiedad
Descripción
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
tipo matriz o escalar o ninguno
bool
antialiased
o aa o suavizadobool o lista de bools
(M, N) en forma de matriz o M*N en forma de matriz
CapStyle
o {'trasero', 'proyectando', 'redondo'}(vmin: flotante, vmax: flotante)
bool
Parchear o (Ruta, Transformar) o Ninguno
Colormap
o str o Ningunocolor o lista de tuplas rgba
edgecolor
o ec o edgecolorscolor o lista de colores o 'cara'
facecolor
o colores de cara o fccolor o lista de colores
calle
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
bool
JoinStyle
o {'inglete', 'redondo', 'bisel'}objeto
linestyle
o guiones o estilos de línea o lsstr o tuple o lista de los mismos
linewidth
o anchos de línea o lwflotador o lista de flotadores
bool
Normalize
o str o Ningunooffset_transform
o transOffsetdesconocido
(N, 2) o (2,) en forma de matriz
Ninguno o bool o flotante o invocable
desconocido
bool
(escala: flotante, longitud: flotante, aleatoriedad: flotante)
booleano o ninguno
calle
lista de str o Ninguno
bool
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,
imshow
puede 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
pcolor
devuelve unPolyCollection
,pcolormesh
devuelve unQuadMesh
. 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
pcolor
ypcolormesh
admiten matrices enmascaradas para C . Sin embargo , solopcolor
admite matrices enmascaradas para X e Y. La razón radica en el manejo interno de los valores enmascarados.pcolor
omite los respectivos polígonos de PolyCollection.pcolormesh
establece 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 adyacentespcolor
no 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 conpcolor
.