matplotlib.colors.SymLogNorm#

class matplotlib.colors.SymLogNorm(linthresh, linscale=1.0, vmin=None, vmax=None, clip=False, *, base=10)[source]#

基类: SymLogNorm

对称对数刻度在原点的正负方向上都是对数的。

由于接近零的值趋于无穷大,因此需要一个围绕零的线性范围。参数 linthresh 允许用户指定该范围的大小 (-linthresh, linthresh)。

参数:
linthreshfloat

绘图呈线性的范围(以避免绘图在零附近趋于无穷大)。

linscalefloat,默认值:1

这允许相对于对数范围拉伸线性范围(-linthreshlinthresh)。其值是线性范围每一半所使用的十进制数量(decades)。例如,当 linscale == 1.0(默认值)时,线性范围的正负两半所占用的空间将等于对数范围中的一个十进制单位。

base浮点型,默认值: 10
参数:
vmin, vmax浮点型或 None

输入数据中处于 [vmin, vmax] 范围内的值将被线性映射到 [0, 1]。如果未提供 vminvmax,则它们分别默认为输入数据的最小值和最大值。

clipbool, 默认值: False

决定映射超出 [vmin, vmax] 范围的值时的行为。

如果未开启裁剪(clipping),[vmin, vmax] 范围之外的值也会被转换,从而产生 [0, 1] 之外的值。这种行为通常是理想的,因为色彩映射(colormap)可以使用特定的颜色来标记这些“低于(under)”和“高于(over)”范围的值。

如果裁剪打开,低于 *vmin* 的值映射为 0,高于 *vmax* 的值映射为 1。这些值将与常规边界值变得无法区分,这可能导致数据误读。

备注

如果 vmin == vmax,输入数据将被映射到 0。

__call__(value, clip=None)[source]#

归一化数据并返回归一化后的数据。

参数:

要归一化的数据。

clip布尔型,可选

请参阅 Normalize 中关于参数 clip 的描述。

如果为 None,则默认为 self.clip(其默认值为 False)。

备注

如果尚未初始化,self.vminself.vmax 将使用 self.autoscale_None(value) 进行初始化。

autoscale_None(A)[source]#

如果未设置 vminvmax,则使用 A 的最小值/最大值来设置它们。

inverse(value)[source]#

将归一化值(即色图中的索引)映射回图像数据值。

参数:

归一化值。

使用 matplotlib.colors.SymLogNorm 的示例#

色彩映射归一化

色彩映射归一化

色彩映射归一化 SymLogNorm

色彩映射归一化 SymLogNorm

颜色映射归一化

颜色映射归一化