class matplotlib.colors.AsinhNorm(linear_width=1, vmin=None, vmax=None, clip=False)[source]#

Bases: AsinhNorm

The inverse hyperbolic sine scale is approximately linear near the origin, but becomes logarithmic for larger positive or negative values. Unlike the SymLogNorm, the transition between these linear and logarithmic regions is smooth, which may reduce the risk of visual artifacts.


This API is provisional and may be revised in the future based on early user feedback.

linear_widthfloat, default: 1

The effective width of the linear region, beyond which the transformation becomes asymptotically logarithmic

vmin, vmaxfloat or None

If vmin and/or vmax is not given, they are initialized from the minimum and maximum value, respectively, of the first input processed; i.e., __call__(A) calls autoscale_None(A).

clipbool, default: False

Determines the behavior for mapping values outside the range [vmin, vmax].

If clipping is off, values outside the range [vmin, vmax] are also transformed linearly, resulting in values outside [0, 1]. For a standard use with colormaps, this behavior is desired because colormaps mark these outside values with specific colors for over or under.

If True values falling outside the range [vmin, vmax], are mapped to 0 or 1, whichever is closer. This makes these values indistinguishable from regular boundary values and can lead to misinterpretation of the data.


Returns 0 if vmin == vmax.

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

Normalize value data in the [vmin, vmax] interval into the [0.0, 1.0] interval and return it.


Data to normalize.

clipbool, optional

See the description of the parameter clip in Normalize.

If None, defaults to self.clip (which defaults to False).


If not already initialized, self.vmin and self.vmax are initialized using self.autoscale_None(value).


If vmin or vmax are not set, use the min/max of A to set them.


Examples using matplotlib.colors.AsinhNorm#

Colormap normalizations SymLogNorm

Colormap normalizations SymLogNorm