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)
X 和 Y 可用于指定四边形的角。
提示
pcolormesh类似于pcolor. 在大多数情况下,它的速度更快,更受欢迎。有关差异的详细讨论,请参见 Differences between pcolor() and pcolormesh() .参数: - C类数组
一个标量二维数组。这些值将被颜色映射。
- X, Y类似数组,可选
多边形四边形的角点坐标:
(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。有关详细信息,请参见 Notes 下面部分。
如果
shading='flat'尺寸 X 和 Y 应该大于 C ,并且四边形由于C[i, j]. 如果 X , Y 和 C 如果维度相等,则会引发警告,并在 C 将被忽略。如果
shading='nearest'或'gouraud',尺寸 X 和 Y 应与 C (否则,将引发ValueError)。为了'nearest'颜色C[i, j]以(X[i, j], Y[i, j]). 为了'gouraud'在四边形角点之间进行平滑插值。如果 X 和/或 Y 是一维数组或列向量,它们将根据需要扩展为适当的二维数组,形成矩形网格。
- cmap : str or
Colormap, default:rcParams["image.cmap"](default:'viridis')str或 颜色映射实例或注册的颜色映射名称。彩色地图显示 C 值到颜色。
- norm :
Normalize可选正常化,可选 normalize实例将数据值缩放到标准颜色映射范围。 [0, 1] 用于映射到颜色。默认情况下,使用线性缩放将数据范围映射到颜色条范围。
- VMN,Vmax浮点,默认值:无
颜色条范围。如果 None ,自动选择合适的最小/最大值
Normalize实例(默认为 C 在默认线性缩放的情况下)。不推荐使用 vmin / vmax 什么时候? norm 给出。- edgecolors'none',none,'face',color,color sequence,可选
边缘的颜色。默认为“无”。可能值:
- “无”或“”:没有边缘。
- None :
rcParams["patch.edgecolor"](default:'black') 将被使用。注意,目前rcParams["patch.force_edgecolor"](default:False) 必须做到这一点才能奏效。 - “面”:使用相邻的面颜色。
- 颜色或颜色序列将设置边缘颜色。
单数形式 变色染料 用作别名。
- alpha浮点,默认值:无
alpha混合值,介于0(透明)和1(不透明)之间。
- shading{'flat','nearest','gouraud','auto'},可选
四边形的填充样式;默认为“平面”或
rcParams["pcolor.shading"](default:'flat') . 可能值:- “平面”:每个四边形都使用纯色。四元(i,j),(i+1,j),(i,j+1),(i+1,j+1)的颜色由下式给出:
C[i, j]. 尺寸 X 和 Y 应该大于 C ;如果它们与 C ,则会引发一个弃用警告,并且 C 都掉下来了。 - “最近的”:每个网格点都有一个以其为中心的颜色,在相邻网格中心之间延伸一半。尺寸 X 和 Y 必须与相同 C .
- “Gouraud”:每个四边形将被Gouraud着色:角的颜色(i,j)由
C[i', j']. 中间区域的颜色值是从角点值插值的。尺寸 X 和 Y 必须与相同 C . 当使用Gouraud着色时, 绿色染料 被忽略。 - “自动”:如果尺寸为 X 和 Y 一个比一个大吗 C . 如果尺寸相同,请选择“最近”。
见 pColor网格和着色 更多描述。
- “平面”:每个四边形都使用纯色。四元(i,j),(i+1,j),(i,j+1),(i+1,j+1)的颜色由下式给出:
- snapbool,默认值:False
是否将网格捕捉到像素边界。
返回: 其他参数: - **kwargs
此外,还允许使用以下参数。它们被传给
QuadMesh构造函数:财产 描述 agg_filter一种过滤函数,它接受一个(m,n,3)浮点数组和一个dpi值,并返回一个(m,n,3)数组。 alpha浮动或无 animated布尔 antialiased或者aa或者抗锯齿药布尔或布尔列表 array恩达雷 capstyle“对接”、“圆形”、“突出” clim(V最小:浮动,V最大:浮动) clip_boxBboxclip_on布尔 clip_path面片或(路径、变换)或无 cmapColormap或str或Nonecolorrgba元组的颜色或列表 contains未知的 edgecolor或ec或edgecolors颜色或颜色列表或“面” facecolor或者facecolors或者fc颜色或颜色列表 figureFiguregidSTR hatch'/'、''、''、'-'、'+'、'X'、'O'、'O'、'、'、'*' in_layout布尔 joinstyle'miter'、'round'、'bevel' label对象 linestyle或虚线或线型或lsstr或tuple或其列表 linewidth或线宽或lw浮动或浮动列表 normNormalize或无offset_position未知的 offsets类似于(N,2)或(2,) path_effectsAbstractPathEffectpicker无、布尔或可呼叫 pickradius未知的 rasterized布尔或无 sketch_params(比例:浮动,长度:浮动,随机性:浮动) snap布尔或无 transformTransformurlSTR urlsstr或None列表 visible布尔 zorder浮动
参见
pcolor- 一种功能稍有不同的替代实现。有关差异的详细讨论,请参见 Differences between pcolor() and pcolormesh() .
imshow- 如果 X 和 Y 都是等距的,
imshow可能是更快的选择。
笔记
屏蔽阵列
C 可能是屏蔽数组。如果
C[i, j]被屏蔽后,对应的四边形将是透明的。掩蔽 X 和 Y 不支持。使用pcolor如果您需要此功能。网格方向
网格方向遵循标准矩阵约定:数组 C 使用形状(nrows,ncolumns)绘制,列号为 X 行数为 Y .
pcolor()和pcolormesh()之间的差异
这两种方法都用于创建使用四边形的二维数组的伪彩色图。
主要区别在于创建的对象和内部数据处理:而
pcolor返回APolyCollection,pcolormesh返回AQuadMesh. 后者更专门用于特定目的,因此速度更快。它几乎总是首选的。屏蔽数组的处理也有细微的差别。两个
pcolor和pcolormesh支持屏蔽数组 C . 然而,只有pcolor支持屏蔽数组 X 和 Y . 原因在于屏蔽值的内部处理。pcolor从多集合中去掉各自的多边形。pcolormesh将遮罩元素的facecolor设置为透明。使用边缘颜色时,您可以看到不同之处。尽管所有边都是在四边形网格中绘制而不考虑遮罩,但两个相邻遮罩四边形之间的边pcolor不绘制,因为多集合中不存在相应的多边形。另一个不同点是支持Gouraud阴影
pcolormesh,不适用于pcolor.注解
除了上述参数外,此函数还可以 data 关键字参数。如果这样的话 data 参数,其他每个参数也可以是字符串
s,解释为data[s](除非引起例外)。作为传递的对象 data 必须支持项目访问 (
data[s])和会员资格测试 (s in data)