CutoffScale¶
-
class
CutoffScale
(*args, **kwargs)[source]¶ Bases:
proplot.axistools._ScaleBase
,matplotlib.scale.ScaleBase
Axis scale composed of arbitrary piecewise linear transformations. The axis can undergo discrete jumps, “accelerations”, or “decelerations” between successive thresholds. Adapted from this stackoverflow post.
- Parameters
*args ((thresh_1, scale_1, …, thresh_N, [scale_N]), optional) – Sequence of “thresholds” and “scales”. If the final scale is omitted (i.e. you passed an odd number of arguments) it is set to
1
. Eachscale_i
in the sequence can be interpreted as follows:If
scale_i < 1
, the axis is decelerated fromthresh_i
tothresh_i+1
. Forscale_N
, the axis is decelerated everywhere abovethresh_N
.If
scale_i > 1
, the axis is accelerated fromthresh_i
tothresh_i+1
. Forscale_N
, the axis is accelerated everywhere abovethresh_N
.If
scale_i == numpy.inf
, the axis discretely jumps fromthresh_i
tothresh_i+1
. The final scalescale_N
cannot benumpy.inf
.
Example
>>> import proplot as plot ... import numpy as np ... scale = plot.CutoffScale(10, 0.5) # move slower above 10 ... scale = plot.CutoffScale(10, 2, 20) # zoom out between 10 and 20 ... scale = plot.CutoffScale(10, np.inf, 20) # jump from 10 to 20
Attributes Summary
The registered scale name.