matplotlib.colors.CenteredNorm#

class matplotlib.colors.CenteredNorm(vcenter=0, halfrange=None, clip=False)[源代码][源代码]#

基类:Normalize

将对称数据围绕中心进行归一化(默认中心为0)。

TwoSlopeNorm 不同,CenteredNorm 在中心周围应用相同的改变率。

在映射围绕概念中心的对称数据时很有用,例如,数据范围从 -2 到 4,以 0 为中心点,并且在中心点周围的变化率相等。

参数:
vcenterfloat, 默认值: 0

定义归一化中 0.5 的数据值。

halfrange浮点数,可选

定义归一化范围的数据值范围为 0.5,使得 vcenter - halfrange 在归一化中为 0.0,而 vcenter + halfrange1.0。默认为数据集中与 vcenter 的最大绝对差值。

剪辑bool, 默认值: 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.  ])
autoscale(A)[源代码][源代码]#

halfrange 设置为 max(abs(A-vcenter)),然后设置 vminvmax

autoscale_None(A)[源代码][源代码]#

设置 vminvmax

property halfrange#

!! 由 numpydoc 处理 !!

property vcenter#

!! 由 numpydoc 处理 !!

property vmax#

!! 由 numpydoc 处理 !!

property vmin#

!! 由 numpydoc 处理 !!

使用 matplotlib.colors.CenteredNorm 的示例#

颜色映射归一化

Colormap normalization