DiscreteNorm¶
- class DiscreteNorm(levels, norm=None, cmap=None, unique=None, step=None, clip=False, descending=False)[source]¶
Bases:
matplotlib.colors.BoundaryNorm
Meta-normalizer that discretizes the possible color values returned by arbitrary continuous normalizers given a list of level boundaries. This is applied to all colormap plots in ProPlot.
- Parameters
levels (list of float) – The level boundaries.
norm (
Normalize
, optional) – The normalizer used to transformlevels
and all data passed to__call__
before discretization. Thevmin
andvmax
of the normalizer are set to the minimum and maximum values inlevels
.cmap (
matplotlib.colors.Colormap
, optional) – The colormap associated with this normalizer. This is used to apply defaultunique
andstep
settings depending on whether the colormap is cyclic and whether distinct “extreme” colors have been designated withset_under
and/orset_over
.unique ({‘neither’, ‘both’, ‘min’, ‘max’}, optional) – Which out-of-bounds regions should be assigned unique colormap colors. The normalizer needs this information so it can ensure the colorbar always spans the full range of colormap colors.
step (float, optional) – The intensity of the transition to out-of-bounds colors as a fraction of the adjacent step between in-bounds colors. Default is
1
.clip (bool, optional) – Whether to clip values falling outside of the level bins. This only has an effect on lower colors when unique is
'min'
or'both'
, and on upper colors when unique is'max'
or'both'
.descending (bool, optional) – Whether the levels are meant to be descending. This will cause the colorbar axis to be reversed when it is drawn with a
ScalarMappable
that uses this normalizer.
Note
This normalizer also makes sure that levels always span the full range of colors in the colormap, whether
extend
is set to'min'
,'max'
,'neither'
, or'both'
. By default, whenextend
is not'both'
, matplotlib cuts off the most intense colors (reserved for “out of bounds” data), even though they are not being used. Note that this means using a diverging colormap withextend='max'
orextend='min'
will shift the central color. But that is very strange usage anyway… so please just don’t do that :)Methods Summary
__call__
(value[, clip])Normalize data values to 0-1.
inverse
(value)Raise an error.