matplotlib.pyplot.pcolormesh #

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

使用非常规矩形网格创建伪彩色图。

来电签名:

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

XY可用于指定四边形的角。

暗示

pcolormesh类似于pcolor。在大多数情况下,它更快且更受欢迎。有关差异的详细讨论,请参阅pcolor() 和 pcolormesh() 之间的差异。

参数
C 2D 类数组

颜色映射的值。颜色映射由cmapnormvminvmax控制。

X, Y类数组,可选

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])

请注意,列索引对应于 x 坐标,行​​索引对应于 y。有关详细信息,请参阅下面的 注释部分。

如果XYshading='flat'的尺寸应该比C的尺寸大一,并且四边形由于 的值而被着色。如果XYC具有相同的尺寸,则会发出警告,并且C的最后一行和最后一列将被忽略。C[i, j]

如果shading='nearest''gouraud',则XY的尺寸应该与C的尺寸相同(如果不是,则会引发 ValueError )。因为'nearest'颜色以 为中心。对于,在四边形角之间进行平滑插值。C[i, j](X[i, j], Y[i, j])'gouraud'

如果X和/或Y是一维数组或列向量,它们将根据需要扩展为适当的二维数组,形成一个矩形网格。

cmap str 或Colormap,默认值:(rcParams["image.cmap"]默认值'viridis':)

用于将标量数据映射到颜色的颜色图实例或注册的颜色图名称。

范数str 或Normalize, 可选

在使用cmap映射到颜色之前,用于将标量数据缩放到 [0, 1] 范围的标准化方法。默认情况下,使用线性缩放,将最小值映射到 0,将最大值映射到 1。

如果给出,这可以是以下之一:

vmin, vmax浮点数,可选

当使用标量数据且没有明确的norm时,vminvmax定义颜色图覆盖的数据范围。默认情况下,颜色图覆盖所提供数据的完整值范围。给定范数实例时使用vmin / vmax是错误的 (但可以接受将范数 名称与vmin / vmax一起使用)。str

edgecolors {'none', None, 'face', color, color sequence}, 可选

边缘的颜色。默认为“无”。可能的值:

  • “无”或“”:没有优势。

  • :(rcParams["patch.edgecolor"]默认值:)'black'将被使用。请注意,当前 rcParams["patch.force_edgecolor"](默认值False:)必须为 True 才能正常工作。

  • 'face':使用相邻的面颜色。

  • 颜色或颜色序列将设置边缘颜色。

单数形式edgecolor用作别名。

alpha浮点数,默认值:无

Alpha 混合值,介于 0(透明)和 1(不透明)之间。

着色{'flat', 'nearest', 'gouraud', 'auto'}, 可选

四边形的填充样式;默认为“flat”或rcParams["pcolor.shading"](默认值:)'auto'。可能的值:

  • 'flat':每个四边形使用纯色。四边形 (i, j), (i+1, j), (i, j+1), (i+1, j+1) 的颜色由 给出 。XY的尺寸应该比C的尺寸大一;如果它们与C相同,则会引发弃用警告,并删除C的最后一行和最后一列。C[i, j]

  • 'nearest':每个网格点都会有一个颜色以它为中心,在相邻网格中心之间延伸一半。XY的尺寸必须与C相同。

  • 'gouraud':每个四边形将被 Gouraud 着色:角 (i', j') 的颜色由 给出。中间区域的颜色值是从角值内插的。XY的尺寸必须与C相同。当使用 Gouraud 着色时,edgecolors被忽略。C[i', j']

  • 'auto':如果XY的尺寸比C大一,则选择 'flat' 。如果尺寸相同,请选择“最近”。

有关更多描述,请参阅pcolormesh 网格和阴影

snap bool,默认值:False

是否将网格捕捉到像素边界。

光栅化布尔值,可选

绘制矢量图形时光栅化 pcolormesh。这可以加快渲染速度并为大型数据集生成更小的文件。另请参阅矢量图形的光栅化

返回
matplotlib.collections.QuadMesh
其他参数
数据可索引对象,可选

如果给定,所有参数也接受一个字符串s,它被解释为data[s](除非这引发异常)。

**kwargs

此外,允许使用以下参数。它们被传递给QuadMesh构造函数:

财产

描述

agg_filter

一个过滤器函数,它接受一个 (m, n, 3) 浮点数组和一个 dpi 值,并返回一个 (m, n, 3) 数组和距图像左下角的两个偏移量

alpha

类数组或标量或无

animated

布尔

antialiased或 aa 或抗锯齿

布尔或布尔列表

array

(M, N) 类数组或 M*N 类数组

capstyle

CapStyle或 {'butt', 'projecting', 'round'}

clim

(vmin:浮动,vmax:浮动)

clip_box

Bbox

clip_on

布尔

clip_path

补丁或(路径,变换)或无

cmap

Colormap或 str 或 无

color

rgba 元组的颜色或列表

edgecolor或 ec 或 edgecolors

颜色或颜色列表或“脸”

facecolor或 facecolors 或 fc

颜色或颜色列表

figure

Figure

gid

字符串

hatch

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

in_layout

布尔

joinstyle

JoinStyle或 {'miter', 'round', 'bevel'}

label

目的

linestyle或破折号或线条样式或 ls

str 或元组或其列表

linewidth或线宽或lw

浮动或浮动列表

mouseover

布尔

norm

Normalize或 str 或 无

offset_transform或 transOffset

未知

offsets

(N, 2) 或 (2,) 类数组

path_effects

AbstractPathEffect

picker

None 或 bool 或 float 或可调用

pickradius

未知

rasterized

布尔

sketch_params

(比例:浮动,长度:浮动,随机性:浮动)

snap

布尔或无

transform

Transform

url

字符串

urls

str 或 None 的列表

visible

布尔

zorder

漂浮

也可以看看

pcolor

具有略微不同功能的替代实现。有关差异的详细讨论,请参阅pcolor() 和 pcolormesh() 之间的差异。

imshow

如果XY都是等距的,imshow则可以是更快的选择。

笔记

掩码数组

C可以是掩码数组。如果被遮蔽,则对应的四边形将是透明的。不支持屏蔽XY。如果您需要此功能,请使用。C[i, j]pcolor

网格方向

网格方向遵循标准矩阵约定: 绘制形状为 (nrows, ncolumns) 的数组C ,列号为X,行号为Y

pcolor() 和 pcolormesh() 的区别

这两种方法都用于使用四边形创建二维数组的伪彩色图。

主要区别在于创建的对象和内部数据处理:虽然pcolor返回 a PolyCollection,但pcolormesh 返回 a QuadMesh。后者更专业于给定目的,因此速度更快。它几乎总是首选。

掩码数组的处理也略有不同。两者都pcolor支持pcolormeshC 的掩码数组。但是,仅pcolor支持XY的掩码数组。原因在于掩码值的内部处理。 pcolor从 PolyCollection 中省略相应的多边形。pcolormesh将蒙面元素的 facecolor 设置为透明。您可以在使用边缘颜色时看到差异。尽管在 QuadMesh 中绘制了所有边而不考虑蒙版,但 pcolor由于 PolyCollection 中不存在相应的多边形,因此不会绘制两个相邻蒙版四边形之间的边。

另一个区别是对 Gouraud 阴影的支持 pcolormesh,而pcolor.