matplotlib.colors.CenteredNorm#
- class matplotlib.colors.CenteredNorm(vcenter=0, halfrange=None, clip=False)[source]#
基类:
Normalize
围绕中心(默认为 0)对对称数据进行归一化。
与
TwoSlopeNorm
不同,CenteredNorm
在中心点周围应用相同的变化率。在围绕概念中心(例如,范围从 -2 到 4,以 0 为中点,且在该中点周围变化率相等的数据)映射对称数据时非常有用。
- 参数:
- vcenter浮点数,默认值:0
在归一化中定义
0.5
的数据值。- halfrange浮点数,可选
定义归一化中
0.5
范围的数据值区间,使得 *vcenter* - *halfrange* 在归一化中为0.0
,*vcenter* + *halfrange* 为1.0
。默认为数据集中与 *vcenter* 的最大绝对差值。- clipbool, 默认值: False
决定映射超出
[vmin, vmax]
范围的值时的行为。如果裁剪关闭,超出
[vmin, vmax]
范围的值也会被转换,结果超出[0, 1]
范围。这种行为通常是期望的,因为颜色映射可以将这些*低于*和*高于*的值标记为特定颜色。如果裁剪打开,低于 *vmin* 的值映射为 0,高于 *vmax* 的值映射为 1。这些值将与常规边界值变得无法区分,这可能导致数据误读。
示例
这将数据值 -2 映射到 0.25,0 映射到 0.5,4 映射到 1.0(假设 0.0 上下变化率相等)
>>> import matplotlib.colors as mcolors >>> norm = mcolors.CenteredNorm(halfrange=4.0) >>> data = [-2., 0., 4.] >>> norm(data) array([0.25, 0.5 , 1. ])
- property halfrange#
- property vcenter#
- property vmax#
- property vmin#