matplotlib.pyplot.tricontourf#

matplotlib.pyplot.tricontourf(*args, **kwargs)[source]#

在非结构化三角形网格上绘制等高线区域。

调用签名

tricontourf(triangulation, z, [levels], ...)
tricontourf(x, y, z, [levels], *, [triangles=triangles], [mask=mask], ...)

三角网格可以通过将 Triangulation 对象作为第一个参数来指定,也可以通过传入点 xy 以及可选的 trianglesmask 来指定。有关这些参数的解释,请参见 Triangulation。如果既未给出 triangulation 也未给出 triangles,则三角剖分将即时计算。

可以将 triangles 作为位置参数传入,例如 tricontourf(x, y, triangles, z, ...)。然而,不建议这样做。为清晰起见,请通过关键字参数传入 triangles

参数:
triangulationTriangulation,可选

已创建的三角网格。

x, y, triangles, mask

定义三角网格的参数。请参见 Triangulation。这与指定 triangulation 是互斥的。

z类数组

绘制等高线的高度值。颜色映射由 cmap, norm, vminvmax 控制。

注意

z 中的所有值必须是有限的。因此,nan 和 inf 值必须被移除或使用 set_mask

levelsint 或 array-like, 可选

确定等高线/区域的数量和位置。

如果为整数 n,则使用 MaxNLocator,它会尝试在 Z 的最小和最大数值之间自动选择不超过 n+1 个“良好”的等高线级别。

如果为 array-like,则在指定级别绘制等高线。值必须按升序排列。

返回:
TriContourSet
其他参数:
colors颜色颜色列表,可选

级别的颜色,即等高线区域的颜色。

序列按照升序循环用于各个级别。如果序列的长度小于级别数量,则会重复使用。

作为快捷方式,可以使用单个颜色字符串代替单元素列表,例如使用 'red' 而非 ['red'] 来为所有级别着色。此快捷方式仅适用于颜色字符串,不适用于其他指定颜色的方式。

默认情况下(值为 None),将使用 cmap 指定的颜色映射。

alphafloat, 默认值: 1

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

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

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

如果设置了 colors,则此参数将被忽略。

normstr 或 Normalize,可选

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

如果给定,可以是以下之一

如果设置了 colors,则此参数将被忽略。

vmin, vmax浮点型,可选

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

如果未给出 vminvmax,则默认颜色缩放基于 levels

如果设置了 colors,则此参数将被忽略。

origin{None, 'upper', 'lower', 'image'}, 默认值: None

通过指定 z[0, 0] 的位置来确定 z 的方向和精确位置。这仅在未给定 XY 时才相关。

  • Nonez[0, 0] 位于左下角的 X=0, Y=0。

  • 'lower':z[0, 0] 位于左下角的 X=0.5, Y=0.5。

  • 'upper':z[0, 0] 位于左上角的 X=N+0.5, Y=0.5。

  • 'image':使用来自 rcParams["image.origin"] 的值 (默认值: 'upper')。

extent(x0, x1, y0, y1), 可选

如果 origin 不是 None,则 extent 的解释方式与 imshow 中相同:它给出外部像素边界。在这种情况下,z[0, 0] 的位置是像素的中心,而不是一个角。如果 originNone,则 (x0, y0) 是 z[0, 0] 的位置,(x1, y1) 是 z[-1, -1] 的位置。

如果在调用 contour 时指定了 XY,则此参数将被忽略。

locatorticker.Locator 子类, 可选

如果未通过 levels 明确给出等高线级别,则定位器用于确定它们。默认值为 MaxNLocator

extend{'neither', 'both', 'min', 'max'}, 默认值: 'neither'

确定超出 levels 范围值的 tricontourf 颜色。

如果为 'neither',则超出 levels 范围的值不着色。如果为 'min', 'max' 或 'both',则为低于、高于或低于和高于 levels 范围的值着色。

低于 min(levels) 和高于 max(levels) 的值将映射到 Colormap 的下限/上限值。请注意,大多数色图默认情况下没有为这些值设置专用颜色,因此超出和低于范围的值是色图的边缘值。您可能希望使用 Colormap.set_underColormap.set_over 显式设置这些值。

注意

如果 TriContourSet 的色图属性发生更改,则它不会收到通知。因此,在修改色图后,需要显式调用 ContourSet.changed()。如果将颜色条分配给 TriContourSet,则可以省略显式调用,因为它会在内部调用 ContourSet.changed()

xunits, yunits已注册的单位, 可选

通过指定 matplotlib.units.ConversionInterface 的实例来覆盖轴单位。

antialiasedbool, 可选

启用抗锯齿,覆盖默认设置。对于填充等高线,默认值为 True。对于线等高线,它取自 rcParams["lines.antialiased"] (默认值: True)。

hatcheslist[str], 可选

用于填充区域的交叉影线模式列表。如果为 None,则不会在等高线中添加影线。

备注

注意

这是 pyplot 封装器,用于 axes.Axes.tricontourf

tricontourf 填充顶部闭合的区间;即,对于边界 z1z2,填充区域是

z1 < Z <= z2

除了最低的区间,它在两端都是闭合的(即包括最低值)。

使用 matplotlib.pyplot.tricontourf 的示例#

不规则间隔数据的等高线图

不规则间隔数据的等高线图

三角等高线演示

三角等高线演示

三角平滑 Delaunay 等高线

三角平滑 Delaunay 等高线

三角平滑用户等高线

三角平滑用户等高线

三角插值演示

三角插值演示