smpl.plot.Locator

class smpl.plot.Locator[source]

Bases: TickHelper

Determine the tick locations;

Note that the same locator should not be used across multiple ~matplotlib.axis.Axis because the locator stores references to the Axis data and view limits.

__init__()

Methods

__init__()

create_dummy_axis(**kwargs)

nonsingular(v0, v1)

Adjust a range as needed to avoid singularities.

raise_if_exceeds(locs)

Log at WARNING level if locs is longer than Locator.MAXTICKS.

set_axis(axis)

set_bounds(vmin, vmax)

[Deprecated]

set_data_interval(vmin, vmax)

[Deprecated]

set_params(**kwargs)

Do nothing, and raise a warning.

set_view_interval(vmin, vmax)

[Deprecated]

tick_values(vmin, vmax)

Return the values of the located ticks given vmin and vmax.

view_limits(vmin, vmax)

Select a scale for the range from vmin to vmax.

Attributes

MAXTICKS

axis

nonsingular(v0, v1)[source]

Adjust a range as needed to avoid singularities.

This method gets called during autoscaling, with (v0, v1) set to the data limits on the axes if the axes contains any data, or (-inf, +inf) if not.

  • If v0 == v1 (possibly up to some floating point slop), this method returns an expanded interval around this value.

  • If (v0, v1) == (-inf, +inf), this method returns appropriate default view limits.

  • Otherwise, (v0, v1) is returned without modification.

raise_if_exceeds(locs)[source]

Log at WARNING level if locs is longer than Locator.MAXTICKS.

This is intended to be called immediately before returning locs from __call__ to inform users in case their Locator returns a huge number of ticks, causing Matplotlib to run out of memory.

The “strange” name of this method dates back to when it would raise an exception instead of emitting a log.

set_bounds(vmin, vmax)

[Deprecated]

Notes

Deprecated since version 3.5: Use .Axis.set_view_interval and .Axis.set_data_interval instead.

set_data_interval(vmin, vmax)

[Deprecated]

Notes

Deprecated since version 3.5: Use .Axis.set_data_interval instead.

set_params(**kwargs)[source]

Do nothing, and raise a warning. Any locator class not supporting the set_params() function will call this.

set_view_interval(vmin, vmax)

[Deprecated]

Notes

Deprecated since version 3.5: Use .Axis.set_view_interval instead.

tick_values(vmin, vmax)[source]

Return the values of the located ticks given vmin and vmax.

Note

To get tick locations with the vmin and vmax values defined automatically for the associated axis simply call the Locator instance:

>>> print(type(loc))
<type 'Locator'>
>>> print(loc())
[1, 2, 3, 4]
view_limits(vmin, vmax)[source]

Select a scale for the range from vmin to vmax.

Subclasses should override this method to change locator behaviour.