matplotlib.colors.Normalize — Matplotlib 3.10.1 documentation (original) (raw)
class matplotlib.colors.Normalize(vmin=None, vmax=None, clip=False)[source]#
Bases: object
A class which, when called, maps values within the interval[vmin, vmax]
linearly to the interval [0.0, 1.0]
. The mapping of values outside [vmin, vmax]
depends on clip.
Examples
x = [-2, -1, 0, 1, 2]
norm = mpl.colors.Normalize(vmin=-1, vmax=1, clip=False) norm(x) # [-0.5, 0., 0.5, 1., 1.5] norm = mpl.colors.Normalize(vmin=-1, vmax=1, clip=True) norm(x) # [0., 0., 0.5, 1., 1.]
Parameters:
vmin, vmaxfloat or None
Values within the range [vmin, vmax]
from the input data will be linearly mapped to [0, 1]
. If either vmin or vmax is not provided, they default to the minimum and maximum values of the input, respectively.
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, resulting in values outside [0, 1]
. This behavior is usually desirable, as colormaps can mark these _under_and over values with specific colors.
If clipping is on, values below vmin are mapped to 0 and values above vmax are mapped to 1. Such values become indistinguishable from regular boundary values, which may cause misinterpretation of the data.
Notes
If vmin == vmax
, input data will be mapped to 0.
__call__(value, clip=None)[source]#
Normalize the data and return the normalized data.
Parameters:
value
Data to normalize.
clipbool, optional
See the description of the parameter clip in Normalize.
If None
, defaults to self.clip
(which defaults toFalse
).
Notes
If not already initialized, self.vmin
and self.vmax
are initialized using self.autoscale_None(value)
.
Set vmin, vmax to min, max of A.
If vmin or vmax are not set, use the min/max of A to set them.
property clip#
Maps the normalized value (i.e., index in the colormap) back to image data value.
Parameters:
value
Normalized value.
static process_value(value)[source]#
Homogenize the input value for easy and efficient normalization.
value can be a scalar or sequence.
Parameters:
value
Data to normalize.
Returns:
resultmasked array
Masked array with the same shape as value.
is_scalarbool
Whether value is a scalar.
Notes
Float dtypes are preserved; integer types with two bytes or smaller are converted to np.float32, and larger types are converted to np.float64. Preserving float32 when possible, and using in-place operations, greatly improves speed for large arrays.
Return whether vmin and vmax are both set.
property vmax#
property vmin#