On this page
matplotlib.scale
class matplotlib.scale.FuncScale(axis, functions)[source]-
Bases:
matplotlib.scale.ScaleBaseProvide an arbitrary scale with user-supplied function for the axis.
Parameters: - axis: the axis for the scale
-
functions : (callable, callable) -
two-tuple of the forward and inverse functions for the scale. The forward function must be monotonic.
Both functions must have the signature:
def forward(values: array-like) -> array-like
get_transform(self)[source]-
The transform for arbitrary scaling
name = 'function'
set_default_locators_and_formatters(self, axis)[source]-
Set the locators and formatters to the same defaults as the linear scale.
class matplotlib.scale.FuncScaleLog(axis, functions, base=10)[source]-
Bases:
matplotlib.scale.LogScaleProvide an arbitrary scale with user-supplied function for the axis and then put on a logarithmic axes.
Parameters: - axis: the axis for the scale
-
functions : (callable, callable) -
two-tuple of the forward and inverse functions for the scale. The forward function must be monotonic.
Both functions must have the signature:
def forward(values: array-like) -> array-like -
base : float -
logarithmic base of the scale (default = 10)
base
get_transform(self)[source]-
The transform for arbitrary scaling
name = 'functionlog'
class matplotlib.scale.FuncTransform(forward, inverse)[source]-
Bases:
matplotlib.transforms.TransformA simple transform that takes and arbitrary function for the forward and inverse transform.
Parameters: -
forward : callable -
The forward function for the transform. This function must have an inverse and, for best behavior, be monotonic. It must have the signature:
def forward(values: array-like) -> array-like -
inverse : callable -
The inverse of the forward function. Signature as
forward.
has_inverse = True
input_dims = 1
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, values)[source]-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
-
class matplotlib.scale.InvertedLog10Transform(**kwargs)[source]-
Bases:
matplotlib.scale.InvertedLogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 10.0
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class matplotlib.scale.InvertedLog2Transform(**kwargs)[source]-
Bases:
matplotlib.scale.InvertedLogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 2.0
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class matplotlib.scale.InvertedLogTransform(base)[source]-
Bases:
matplotlib.scale.InvertedLogTransformBasehas_inverse = True
input_dims = 1
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)[source]-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class matplotlib.scale.InvertedLogTransformBase(**kwargs)[source]-
Bases:
matplotlib.transforms.Transform[Deprecated]
Notes
Deprecated since version 3.1:
has_inverse = True
input_dims = 1
is_separable = True
output_dims = 1
transform_non_affine(self, a)[source]-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class matplotlib.scale.InvertedNaturalLogTransform(**kwargs)[source]-
Bases:
matplotlib.scale.InvertedLogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 2.718281828459045
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class matplotlib.scale.InvertedSymmetricalLogTransform(base, linthresh, linscale)[source]-
Bases:
matplotlib.transforms.Transformhas_inverse = True
input_dims = 1
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)[source]-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class matplotlib.scale.LinearScale(axis, **kwargs)[source]-
Bases:
matplotlib.scale.ScaleBaseThe default linear scale.
get_transform(self)[source]-
The transform for linear scaling is just the
IdentityTransform.
name = 'linear'
set_default_locators_and_formatters(self, axis)[source]-
Set the locators and formatters to reasonable defaults for linear scaling.
class matplotlib.scale.Log10Transform(**kwargs)[source]-
Bases:
matplotlib.scale.LogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 10.0
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class matplotlib.scale.Log2Transform(**kwargs)[source]-
Bases:
matplotlib.scale.LogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 2.0
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class matplotlib.scale.LogScale(axis, **kwargs)[source]-
Bases:
matplotlib.scale.ScaleBaseA standard logarithmic scale. Care is taken to only plot positive values.
- basex/basey:
- The base of the logarithm
- nonposx/nonposy: {'mask', 'clip'}
- non-positive values in x or y can be masked as invalid, or clipped to a very small positive number
- subsx/subsy:
-
Where to place the subticks between each major tick. Should be a sequence of integers. For example, in a log10 scale:
[2, 3, 4, 5, 6, 7, 8, 9]will place 8 logarithmically spaced minor ticks between each major tick.
class InvertedLog10Transform(**kwargs)-
Bases:
matplotlib.scale.InvertedLogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 10.0
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class InvertedLog2Transform(**kwargs)-
Bases:
matplotlib.scale.InvertedLogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 2.0
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class InvertedLogTransform(base)-
Bases:
matplotlib.scale.InvertedLogTransformBasehas_inverse = True
input_dims = 1
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class InvertedNaturalLogTransform(**kwargs)-
Bases:
matplotlib.scale.InvertedLogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 2.718281828459045
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class Log10Transform(**kwargs)-
Bases:
matplotlib.scale.LogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 10.0
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class Log2Transform(**kwargs)-
Bases:
matplotlib.scale.LogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 2.0
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class LogTransform(base, nonpos='clip')-
Bases:
matplotlib.transforms.Transformhas_inverse = True
input_dims = 1
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class LogTransformBase(**kwargs)-
Bases:
matplotlib.transforms.Transform[Deprecated]
Notes
Deprecated since version 3.1:
has_inverse = True
input_dims = 1
is_separable = True
output_dims = 1
transform_non_affine(self, a)-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class NaturalLogTransform(**kwargs)-
Bases:
matplotlib.scale.LogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 2.718281828459045
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
base
limit_range_for_scale(self, vmin, vmax, minpos)[source]-
Limit the domain to positive values.
name = 'log'
set_default_locators_and_formatters(self, axis)[source]-
Set the locators and formatters to specialized versions for log scaling.
class matplotlib.scale.LogTransform(base, nonpos='clip')[source]-
Bases:
matplotlib.transforms.Transformhas_inverse = True
input_dims = 1
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)[source]-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class matplotlib.scale.LogTransformBase(**kwargs)[source]-
Bases:
matplotlib.transforms.Transform[Deprecated]
Notes
Deprecated since version 3.1:
has_inverse = True
input_dims = 1
is_separable = True
output_dims = 1
transform_non_affine(self, a)[source]-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class matplotlib.scale.LogisticTransform(nonpos='mask')[source]-
Bases:
matplotlib.transforms.Transformhas_inverse = True
input_dims = 1
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)[source]-
logistic transform (base 10)
class matplotlib.scale.LogitScale(axis, nonpos='mask')[source]-
Bases:
matplotlib.scale.ScaleBaseLogit scale for data between zero and one, both excluded.
This scale is similar to a log scale close to zero and to one, and almost linear around 0.5. It maps the interval ]0, 1[ onto ]-infty, +infty[.
- nonpos: {'mask', 'clip'}
- values beyond ]0, 1[ can be masked as invalid, or clipped to a number very close to 0 or 1
get_transform(self)[source]-
Return a
LogitTransforminstance.
limit_range_for_scale(self, vmin, vmax, minpos)[source]-
Limit the domain to values between 0 and 1 (excluded).
name = 'logit'
class matplotlib.scale.LogitTransform(nonpos='mask')[source]-
Bases:
matplotlib.transforms.Transformhas_inverse = True
input_dims = 1
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)[source]-
logit transform (base 10), masked or clipped
class matplotlib.scale.NaturalLogTransform(**kwargs)[source]-
Bases:
matplotlib.scale.LogTransformBase[Deprecated]
Notes
Deprecated since version 3.1:
base = 2.718281828459045
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
class matplotlib.scale.ScaleBase(axis, **kwargs)[source]-
Bases:
objectThe base class for all scales.
Scales are separable transformations, working on a single dimension.
Any subclasses will want to override:
- And optionally:
Construct a new scale.
Notes
The following note is for scale implementors.
For back-compatibility reasons, scales take an
Axisobject as first argument. However, this argument should not be used: a single scale object should be usable by multipleAxises at the same time.limit_range_for_scale(self, vmin, vmax, minpos)[source]-
Returns the range vmin, vmax, possibly limited to the domain supported by this scale.
- minpos should be the minimum positive value in the data.
- This is used by log scales to determine a minimum value.
class matplotlib.scale.SymmetricalLogScale(axis, **kwargs)[source]-
Bases:
matplotlib.scale.ScaleBaseThe symmetrical logarithmic scale is logarithmic in both the positive and negative directions from the origin.
Since the values close to zero tend toward infinity, there is a need to have a range around zero that is linear. The parameter linthresh allows the user to specify the size of this range (-linthresh, linthresh).
Parameters: -
basex, basey : float -
The base of the logarithm. Defaults to 10.
-
linthreshx, linthreshy : float -
Defines the range
(-x, x), within which the plot is linear. This avoids having the plot go to infinity around zero. Defaults to 2. -
subsx, subsy : sequence of int -
Where to place the subticks between each major tick. For example, in a log10 scale:
[2, 3, 4, 5, 6, 7, 8, 9]will place 8 logarithmically spaced minor ticks between each major tick. -
linscalex, linscaley : float, optional -
This allows the linear range
(-linthresh, linthresh)to be stretched relative to the logarithmic range. Its value is the number of decades to use for each half of the linear range. For example, when linscale == 1.0 (the default), the space used for the positive and negative halves of the linear range will be equal to one decade in the logarithmic range.
class InvertedSymmetricalLogTransform(base, linthresh, linscale)-
Bases:
matplotlib.transforms.Transformhas_inverse = True
input_dims = 1
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
class SymmetricalLogTransform(base, linthresh, linscale)-
Bases:
matplotlib.transforms.Transformhas_inverse = True
input_dims = 1
inverted(self)-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
get_transform(self)[source]-
Return a
SymmetricalLogTransforminstance.
name = 'symlog'
set_default_locators_and_formatters(self, axis)[source]-
Set the locators and formatters to specialized versions for symmetrical log scaling.
-
class matplotlib.scale.SymmetricalLogTransform(base, linthresh, linscale)[source]-
Bases:
matplotlib.transforms.Transformhas_inverse = True
input_dims = 1
inverted(self)[source]-
Return the corresponding inverse transformation.
The return value of this method should be treated as temporary. An update to self does not cause a corresponding update to its inverted copy.
x === self.inverted().transform(self.transform(x))
is_separable = True
output_dims = 1
transform_non_affine(self, a)[source]-
Performs only the non-affine part of the transformation.
transform(values)is always equivalent totransform_affine(transform_non_affine(values)).In non-affine transformations, this is generally equivalent to
transform(values). In affine transformations, this is always a no-op.Accepts a numpy array of shape (N x
input_dims) and returns a numpy array of shape (N xoutput_dims).Alternatively, accepts a numpy array of length
input_dimsand returns a numpy array of lengthoutput_dims.
matplotlib.scale.get_scale_docs()[source]-
[Deprecated] Helper function for generating docstrings related to scales.
Notes
Deprecated since version 3.1: get_scale_docs() is considered private API since 3.1 and will be removed from the public API in 3.3.
matplotlib.scale.get_scale_names()[source]
matplotlib.scale.register_scale(scale_class)[source]-
Register a new kind of scale.
scale_class must be a subclass of
ScaleBase.
matplotlib.scale.scale_factory(scale, axis, **kwargs)[source]-
Return a scale class by name.
Parameters: -
scale : {function, functionlog, linear, log, logit, symlog} -
axis : Axis
-
© 2012–2018 Matplotlib Development Team. All rights reserved.
Licensed under the Matplotlib License Agreement.
https://matplotlib.org/3.1.1/api/scale_api.html