matplotlib.colors.FuncNorm#

class matplotlib.colors.FuncNorm(functions, vmin=None, vmax=None, clip=False)[source]#

Bases: FuncNorm

Arbitrary normalization using functions for the forward and inverse.

Parameters:
functions(callable, callable)

two-tuple of the forward and inverse functions for the normalization. The forward function must be monotonic.

Both functions must have the signature

def forward(values: array-like) -> array-like
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 by the function, 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.

Parameters:
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.

Notes

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.

Parameters:
value

Data to normalize.

clipbool, optional

See the description of the parameter clip in Normalize.

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

Notes

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

autoscale_None(A)[source]#

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

inverse(value)[source]#

Examples using matplotlib.colors.FuncNorm#

Colormap normalization

Colormap normalization