matplotlib.axes.Axes.pcolormesh #
- Haches. pcolormesh ( * args , alpha = None , norm = None , cmap = None , vmin = None , vmax = None , shading = None , antialiased = False , data = None , ** kwargs ) [source] #
Créez un tracé en pseudo-couleur avec une grille rectangulaire non régulière.
Signature d'appel :
pcolormesh([X, Y,] C, **kwargs)
X et Y peuvent être utilisés pour spécifier les coins des quadrilatères.
Indice
pcolormesh
est similaire àpcolor
. C'est beaucoup plus rapide et préféré dans la plupart des cas. Pour une discussion détaillée sur les différences, voir Différences entre pcolor() et pcolormesh() .- Paramètres :
- C 2D de type tableau
Les valeurs mappées en couleur. Le mappage des couleurs est contrôlé par cmap , norm , vmin et vmax .
- X, Y comme un tableau, facultatif
Les coordonnées des coins des quadrilatères d'un 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])
Notez que l'index de colonne correspond à la coordonnée x et que l'index de ligne correspond à y. Pour plus de détails, consultez la section Remarques ci-dessous.
Si
shading='flat'
les dimensions de X et Y doivent être supérieures à celles de C , et le quadrilatère est coloré en raison de la valeur à . Si X , Y et C ont des dimensions égales, un avertissement sera émis et la dernière ligne et la dernière colonne de C seront ignorées.C[i, j]
Si
shading='nearest'
ou'gouraud'
, les dimensions de X et Y doivent être les mêmes que celles de C (sinon, une ValueError sera déclenchée). Car'nearest'
la couleur est centrée sur . Pour , une interpolation douce est effectuée entre les coins du quadrilatère.C[i, j]
(X[i, j], Y[i, j])
'gouraud'
Si X et/ou Y sont des tableaux 1-D ou des vecteurs colonnes, ils seront étendus selon les besoins dans les tableaux 2D appropriés, créant une grille rectangulaire.
- cmap str ou
Colormap
, par défaut :rcParams["image.cmap"]
(par défaut :'viridis'
) L'instance Colormap ou le nom de la palette de couleurs enregistrée utilisée pour mapper les données scalaires aux couleurs.
- norm str ou
Normalize
, facultatif La méthode de normalisation utilisée pour mettre à l'échelle les données scalaires dans la plage [0, 1] avant le mappage aux couleurs à l'aide de cmap . Par défaut, une mise à l'échelle linéaire est utilisée, mappant la valeur la plus basse à 0 et la plus élevée à 1.
S'il est donné, il peut s'agir de l'un des éléments suivants :
Une instance de
Normalize
ou une de ses sous-classes (voir Colormap Normalization ).Un nom d'échelle, c'est-à-dire "linéaire", "log", "symlog", "logit", etc. Pour une liste des échelles disponibles, appelez
matplotlib.scale.get_scale_names()
. Dans ce cas, une sous-classe appropriéeNormalize
est générée et instanciée dynamiquement.
- vmin, flotteur vmax, facultatif
Lorsque vous utilisez des données scalaires et aucune norme explicite , vmin et vmax définissent la plage de données couverte par la palette de couleurs. Par défaut, la palette de couleurs couvre toute la plage de valeurs des données fournies. C'est une erreur d'utiliser vmin / vmax lorsqu'une instance de norme est donnée (mais l'utilisation d'un nom de norme avec vmin / vmax est acceptable).
str
- edgecolors {'none', None, 'face', color, color sequence}, facultatif
La couleur des bords. Par défaut, 'aucun'. Valeurs possibles:
'aucun' ou '' : aucun bord.
Aucun :
rcParams["patch.edgecolor"]
(par défaut :'black'
) sera utilisé. Notez qu'actuellementrcParams["patch.force_edgecolor"]
(par défaut :False
) doit être True pour que cela fonctionne.'face' : utilise la couleur de face adjacente.
Une couleur ou une séquence de couleurs définira la couleur du bord.
La forme singulière edgecolor fonctionne comme un alias.
- flottant alpha , par défaut : aucun
La valeur de fusion alpha, entre 0 (transparent) et 1 (opaque).
- shading {'flat', 'nearest', 'gouraud', 'auto'}, optionnel
Le style de remplissage du quadrilatère ; par défaut à 'plat' ou
rcParams["pcolor.shading"]
(par défaut :'auto'
). Valeurs possibles:'plat' : une couleur unie est utilisée pour chaque quadrilatère. La couleur du quad (i, j), (i+1, j), (i, j+1), (i+1, j+1) est donnée par . Les dimensions de X et Y doivent être supérieures d'une unité à celles de C ; s'ils sont identiques à C , un avertissement d'obsolescence est généré et la dernière ligne et la dernière colonne de C sont supprimées.
C[i, j]
'le plus proche' : Chaque point de la grille aura une couleur centrée dessus, s'étendant à mi-chemin entre les centres de grille adjacents. Les dimensions de X et Y doivent être les mêmes que C .
'gouraud' : chaque carré sera ombré de Gouraud : la couleur des coins (i', j') est donnée par . Les valeurs de couleur de la zone intermédiaire sont interpolées à partir des valeurs de coin. Les dimensions de X et Y doivent être les mêmes que C . Lorsque l'ombrage Gouraud est utilisé, edgecolors est ignoré.
C[i', j']
'auto' : choisissez 'plat' si les dimensions de X et Y sont supérieures d'une unité à C . Choisissez "le plus proche" si les dimensions sont identiques.
Voir pcolormesh grilles et ombrage pour plus de description.
- snap bool, par défaut : False
S'il faut aligner le maillage sur les limites de pixels.
- booléen tramé, facultatif
Pixellisez le pcolormesh lors du dessin de graphiques vectoriels. Cela peut accélérer le rendu et produire des fichiers plus petits pour les grands ensembles de données. Voir aussi Rastérisation pour les graphiques vectoriels .
- Retours :
- Autres paramètres :
- objet de données indexable, facultatif
S'ils sont donnés, tous les paramètres acceptent également une chaîne
s
, qui est interprétée commedata[s]
(sauf si cela déclenche une exception).- **kwargs
De plus, les arguments suivants sont autorisés. Ils sont transmis au
QuadMesh
constructeur :Propriété
La description
une fonction de filtre, qui prend un tableau flottant (m, n, 3) et une valeur dpi, et renvoie un tableau (m, n, 3) et deux décalages à partir du coin inférieur gauche de l'image
de type tableau ou scalaire ou Aucun
bourdonner
antialiased
ou aa ou antialiasésbool ou liste de bools
(M, N) de type tableau ou M*N de type tableau
CapStyle
ou {'bout', 'en saillie', 'rond'}(vmin : flottant, vmax : flottant)
bourdonner
Patch ou (chemin, transformation) ou aucun
Colormap
ou str ou Aucuncouleur ou liste de tuples rgba
edgecolor
ou ec ou edgecolorscouleur ou liste de couleurs ou 'visage'
facecolor
ou facecolors ou fccouleur ou liste de couleurs
chaîne
{'/', '\', '|', '-', '+', 'x', 'o', 'O', '.', '*'}
bourdonner
JoinStyle
ou {'onglet', 'rond', 'biseau'}objet
linestyle
ou tirets ou styles de ligne ou lsstr ou tuple ou une liste de ceux-ci
linewidth
ou largeurs de ligne ou lwflottant ou liste de flottants
bourdonner
Normalize
ou str ou Aucunoffset_transform
ou transOffsetinconnue
(N, 2) ou (2,) en forme de tableau
Aucun ou bool ou flottant ou appelable
inconnue
bourdonner
(échelle : flottant, longueur : flottant, caractère aléatoire : flottant)
booléen ou Aucun
chaîne
liste de str ou None
bourdonner
flotteur
Voir également
pcolor
Une implémentation alternative avec des fonctionnalités légèrement différentes. Pour une discussion détaillée sur les différences, voir Différences entre pcolor() et pcolormesh() .
imshow
Si X et Y sont chacun équidistants,
imshow
peut être une alternative plus rapide.
Remarques
Tableaux masqués
C peut être un tableau masqué. Si est masqué, le quadrilatère correspondant sera transparent. Le masquage de X et Y n'est pas pris en charge. À utiliser si vous avez besoin de cette fonctionnalité.
C[i, j]
pcolor
Orientation de la grille
L'orientation de la grille suit la convention matricielle standard : un tableau C de forme (nlignes, ncolonnes) est tracé avec le numéro de colonne sous la forme X et le numéro de la ligne sous la forme Y .
Différences entre pcolor() et pcolormesh()
Les deux méthodes sont utilisées pour créer un tracé en pseudo-couleur d'un tableau 2D à l'aide de quadrilatères.
La principale différence réside dans l'objet créé et la gestion interne des données : While
pcolor
renvoie unPolyCollection
,pcolormesh
renvoie unQuadMesh
. Ce dernier est plus spécialisé pour le but donné et est donc plus rapide. Il devrait presque toujours être préféré.Il existe également une légère différence dans la gestion des tableaux masqués. Les deux
pcolor
et prennent enpcolormesh
charge les tableaux masqués pour C . Cependant, nepcolor
prend en charge que les tableaux masqués pour X et Y . La raison réside dans la gestion interne des valeurs masquées.pcolor
omet les polygones respectifs de la PolyCollection.pcolormesh
définit la couleur de face des éléments masqués sur transparent. Vous pouvez voir la différence lorsque vous utilisez edgecolors. Alors que tous les bords sont dessinés indépendamment du masquage dans un QuadMesh, le bord entre deux quadrilatères masqués adjacentspcolor
n'est pas dessiné car les polygones correspondants n'existent pas dans la PolyCollection.Une autre différence est la prise en charge de l'ombrage de Gouraud dans
pcolormesh
, qui n'est pas disponible avecpcolor
.
Exemples utilisant matplotlib.axes.Axes.pcolormesh
#
Rasterisation pour les graphiques vectoriels
Guide de mise en page contrainte
Normalisation de la palette de couleurs