matplotlib.pyplot.tricontour#
- matplotlib.pyplot.tricontour(*args, **kwargs)[源代码][源代码]#
在非结构化的三角形网格上绘制等高线。
调用签名:
tricontour(triangulation, z, [levels], ...) tricontour(x, y, z, [levels], *, [triangles=triangles], [mask=mask], ...)
三角网格可以通过传递一个
Triangulation
对象作为第一个参数来指定,或者通过传递点 x、y 以及可选的 triangles 和 mask。有关这些参数的解释,请参见Triangulation
。如果未给出 triangulation 或 triangles,则会在运行时计算三角剖分。可以通过位置传递 三角形 ,例如
tricontour(x, y, triangles, z, ...)
。然而,这并不推荐。为了更清晰,请通过关键字参数传递 三角形。- 参数:
- 三角剖分 :
Triangulation
, 可选三角测量,可选 一个已经创建的三角形网格。
- x, y, 三角形, 掩码
定义三角形网格的参数。参见
Triangulation
。这与指定 triangulation 是互斥的。- z类似数组
绘制等高线的海拔值。颜色映射由 cmap、norm、vmin 和 vmax 控制。
备注
在 z 中的所有值必须是有限的。因此,nan 和 inf 值必须被移除或使用
set_mask
。- 级别int 或类数组,可选
确定等高线/区域的数目和位置。
如果是一个整数 n,则使用
MaxNLocator
,它会尝试在 Z 的最小值和最大值之间自动选择不超过 n+1 个“好”的等高线级别。如果类似数组,则在指定级别绘制等高线。值必须按递增顺序排列。
- 三角剖分 :
- 返回:
- 其他参数:
- 颜色 : color 或 color 列表, 可选颜色或颜色列表,可选
各级别的颜色,即等高线。
序列按升序循环用于各个级别。如果序列比级别数短,则重复该序列。
作为一种快捷方式,可以使用单色字符串代替单元素列表,即使用
'red'
而不是['red']
来为所有级别着色。此快捷方式仅适用于颜色字符串,不适用于其他颜色指定方式。默认情况下(值为 None),将使用 cmap 指定的颜色映射。
- alphafloat, 默认值: 1
阿尔法混合值,介于 0(透明)和 1(不透明)之间。
- cmap : str 或
Colormap
,默认值:rcParams["image.cmap"]
(default:'viridis'
)str 或 用于将标量数据映射为颜色的 Colormap 实例或已注册的 colormap 名称。
如果设置了 colors,则忽略此参数。
- norm : str 或
Normalize
,可选str 或 在将标量数据映射到颜色之前,用于将标量数据缩放到 [0, 1] 范围的归一化方法。默认情况下,使用线性缩放,将最低值映射到 0,最高值映射到 1。
如果提供,这可以是以下之一:
一个刻度名称,即 "linear"、"log"、"symlog"、"logit" 等之一。要获取可用刻度的列表,请调用
matplotlib.scale.get_scale_names()
。在这种情况下,会动态生成并实例化一个合适的Normalize
子类。
如果设置了 colors,则忽略此参数。
- vmin, vmax浮点数, 可选
在使用标量数据且未指定显式 norm 时,vmin 和 vmax 定义了颜色映射覆盖的数据范围。默认情况下,颜色映射覆盖所提供数据的完整值范围。当给定 norm 实例时,使用 vmin/vmax 是错误的(但使用
str
norm 名称与 vmin/vmax 一起是可以接受的)。如果未指定 vmin 或 vmax ,默认的颜色缩放将基于 levels 。
如果设置了 colors,则忽略此参数。
- origin : {None, 'upper', 'lower', 'image'}, 默认: None
toctree
是一个 reStructuredText 指令 ,这是一个非常多功能的标记。指令可以有参数、选项和内容。 通过指定
z[0, 0]
的位置来确定 z 的方向和精确位置。仅当未给出 X 和 Y 时,此项才相关。None:
z[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"]
(default:'upper'
) 的值。
- 范围(x0, x1, y0, y1), 可选
如果 origin 不是 None,那么 extent 的解释与
imshow
中相同:它给出了外部像素边界。在这种情况下,z[0, 0] 的位置是像素的中心,而不是角落。如果 origin 是 None,那么 (x0, y0) 是 z[0, 0] 的位置,而 (x1, y1) 是 z[-1, -1] 的位置。如果在调用 contour 时指定了 X 和 Y,则忽略此参数。
- 定位器ticker.Locator 子类,可选
如果没有通过 levels 明确给出等高线级别,则使用定位器来确定等高线级别。默认为
MaxNLocator
。- 扩展{'neither', 'both', 'min', 'max'}, 默认: 'neither'
确定超出 levels 范围的值的
tricontour
着色。如果为 'neither',则 levels 范围外的值不会着色。如果为 'min'、'max' 或 'both',则对低于、高于或低于和高于 levels 范围的值进行着色。
低于
min(levels)
和高于max(levels)
的值会被映射到Colormap
的 under/over 值。注意,大多数色图默认没有为这些值分配专用颜色,因此 over 和 under 值是色图的边缘值。你可能希望使用Colormap.set_under
和Colormap.set_over
显式设置这些值。备注
如果现有
TriContourSet
的 colormap 属性发生更改,它不会收到通知。因此,在修改 colormap 后,需要显式调用ContourSet.changed()
。如果为TriContourSet
分配了 colorbar,则可以省略显式调用,因为它会在内部调用ContourSet.changed()
。- x单位, y单位注册单位,可选
通过指定
matplotlib.units.ConversionInterface
的实例来覆盖轴单位。- 抗锯齿bool, 可选
启用抗锯齿,覆盖默认设置。对于填充等高线,默认值为 True。对于线条等高线,它取自
rcParams["lines.antialiased"]
(default:True
)。- linewidths : float 或 array-like, 默认值:
rcParams["contour.linewidth"]
(default:None
)浮点数或类似数组的对象,默认值: 等高线的线宽。
如果是数字,所有层级将以这个线宽绘制。
如果是一个序列,将按指定的顺序绘制升序级别的线条宽度。
如果为 None,则回退到
rcParams["lines.linewidth"]
(default:1.5
)。- linestyles : {None, 'solid', 'dashed', 'dashdot', 'dotted'}, 可选
toctree
是一个 reStructuredText 指令 ,这是一个非常多功能的标记。指令可以有参数、选项和内容。 如果 linestyles 是 None,默认值为 'solid',除非线条是单色的。在这种情况下,负轮廓的线条样式将从
rcParams["contour.negative_linestyle"]
(default:'dashed'
) 设置中获取。linestyles 也可以是一个包含上述字符串的可迭代对象,用于指定一组要使用的线型。如果这个可迭代对象的长度小于等高线层级的数量,它将根据需要重复使用。
注释
备注