matplotlib.widgets.RangeSlider#

class matplotlib.widgets.RangeSlider(ax, label, valmin, valmax, *, valinit=None, valfmt=None, closedmin=True, closedmax=True, dragging=True, valstep=None, orientation='horizontal', track_color='lightgrey', handle_style=None, **kwargs)[source]#

Bases: SliderBase

A slider representing a range of floating point values. Defines the min and max of the range via the val attribute as a tuple of (min, max).

Create a slider that defines a range contained within [valmin, valmax] in Axes ax. For the slider to remain responsive you must maintain a reference to it. Call on_changed() to connect to the slider event.

Attributes:
valtuple of float

Slider value.

Parameters:
axAxes

The Axes to put the slider in.

labelstr

Slider label.

valminfloat

The minimum value of the slider.

valmaxfloat

The maximum value of the slider.

valinittuple of float or None, default: None

The initial positions of the slider. If None the initial positions will be at the 25th and 75th percentiles of the range.

valfmtstr or callable, default: None

The way to format the range's minimal and maximal values. If a string, it must be in %-format. If a callable, it must have the signature valfmt(val: float) -> str. If None, a ScalarFormatter is used.

closedminbool, default: True

Whether the slider interval is closed on the bottom.

closedmaxbool, default: True

Whether the slider interval is closed on the top.

draggingbool, default: True

If True the slider can be dragged by the mouse.

valstepfloat, default: None

If given, the slider will snap to multiples of valstep.

orientation{'horizontal', 'vertical'}, default: 'horizontal'

The orientation of the slider.

track_colorcolor, default: 'lightgrey'

The color of the background track. The track is accessible for further styling via the track attribute.

handle_styledict

Properties of the slider handles. Default values are

Key

Value

Default

Description

facecolor

color

'white'

The facecolor of the slider handles.

edgecolor

color

'.75'

The edgecolor of the slider handles.

size

int

10

The size of the slider handles in points.

Other values will be transformed as marker{foo} and passed to the Line2D constructor. e.g. handle_style = {'style'='x'} will result in markerstyle = 'x'.

Notes

Additional kwargs are passed on to self.poly which is the Polygon that draws the slider knob. See the Polygon documentation for valid property names (facecolor, edgecolor, alpha, etc.).

on_changed(func)[source]#

Connect func as callback function to changes of the slider value.

Parameters:
funccallable

Function to call when slider is changed. The function must accept a 2-tuple of floats as its argument.

Returns:
int

Connection id (which can be used to disconnect func).

set_max(max)[source]#

Set the lower value of the slider to max.

Parameters:
maxfloat
set_min(min)[source]#

Set the lower value of the slider to min.

Parameters:
minfloat
set_val(val)[source]#

Set slider value to val.

Parameters:
valtuple or array-like of float

Examples using matplotlib.widgets.RangeSlider#

Image scaling using a RangeSlider

Image scaling using a RangeSlider