matplotlib.backend_tools
#
Abstract base classes define the primitives for Tools.
These tools are used by matplotlib.backend_managers.ToolManager
ToolBase
Simple stateless tool
ToolToggleBase
Tool that has two states, only one Toggle tool can be active at any given time for the same
matplotlib.backend_managers.ToolManager
- class matplotlib.backend_tools.AxisScaleBase(*args, **kwargs)[source]#
Bases:
ToolToggleBase
Base Tool to toggle between linear and logarithmic.
- disable(event=None)[source]#
Disable the toggle tool.
trigger
call this method whentoggled
is True.This can happen in different circumstances.
Click on the toolbar tool button.
Call to
matplotlib.backend_managers.ToolManager.trigger_tool
.Another
ToolToggleBase
derived tool is triggered (from the sameToolManager
).
- class matplotlib.backend_tools.ConfigureSubplotsBase(toolmanager, name)[source]#
Bases:
ToolBase
Base tool for the configuration of subplots.
- class matplotlib.backend_tools.Cursors(value, names=None, *, module=None, qualname=None, type=None, start=1, boundary=None)[source]#
Bases:
IntEnum
Backend-independent cursor types.
- class matplotlib.backend_tools.RubberbandBase(toolmanager, name)[source]#
Bases:
ToolBase
Draw and remove a rubberband.
- trigger(sender, event, data=None)[source]#
Call
draw_rubberband
orremove_rubberband
based on data.
- class matplotlib.backend_tools.SaveFigureBase(toolmanager, name)[source]#
Bases:
ToolBase
Base tool for figure saving.
- property default_keymap#
- class matplotlib.backend_tools.ToolBack(toolmanager, name)[source]#
Bases:
ViewsPositionsBase
Move back up the view limits stack.
- property default_keymap#
- class matplotlib.backend_tools.ToolBase(toolmanager, name)[source]#
Bases:
object
Base tool class.
A base tool, only implements
trigger
method or no method at all. The tool is instantiated bymatplotlib.backend_managers.ToolManager
.- property canvas#
The canvas of the figure affected by this tool, or None.
- default_keymap = None#
Keymap to associate with this tool.
list[str]
: List of keys that will trigger this tool when a keypress event is emitted onself.figure.canvas
. Note that this attribute is looked up on the instance, and can therefore be a property (this is used e.g. by the built-in tools to load the rcParams at instantiation time).
- description = None#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- destroy()[source]#
[Deprecated] Destroy the tool.
This method is called by
ToolManager.remove_tool
.Notes
Deprecated since version 3.6: Use tool_removed_event instead.
- property figure#
The Figure affected by this tool, or None.
- image = None#
Filename of the image.
str
: Filename of the image to use in a Toolbar. If None, the name is used as a label in the toolbar button.
- property name#
The tool id (str, must be unique among tools of a tool manager).
- property toolmanager#
The
ToolManager
that controls this tool.
- trigger(sender, event, data=None)[source]#
Called when this tool gets used.
This method is called by
ToolManager.trigger_tool
.- Parameters:
- event
Event
The canvas event that caused this tool to be called.
- senderobject
Object that requested the tool to be triggered.
- dataobject
Extra data.
- event
- class matplotlib.backend_tools.ToolCopyToClipboardBase(toolmanager, name)[source]#
Bases:
ToolBase
Tool to copy the figure to the clipboard.
- property default_keymap#
- description = 'Copy the canvas figure to clipboard'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- trigger(*args, **kwargs)[source]#
Called when this tool gets used.
This method is called by
ToolManager.trigger_tool
.- Parameters:
- event
Event
The canvas event that caused this tool to be called.
- senderobject
Object that requested the tool to be triggered.
- dataobject
Extra data.
- event
- class matplotlib.backend_tools.ToolCursorPosition(*args, **kwargs)[source]#
Bases:
ToolBase
Send message with the current pointer position.
This tool runs in the background reporting the position of the cursor.
- class matplotlib.backend_tools.ToolForward(toolmanager, name)[source]#
Bases:
ViewsPositionsBase
Move forward in the view lim stack.
- property default_keymap#
- class matplotlib.backend_tools.ToolFullScreen(toolmanager, name)[source]#
Bases:
ToolBase
Tool to toggle full screen.
- property default_keymap#
- description = 'Toggle fullscreen mode'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- trigger(sender, event, data=None)[source]#
Called when this tool gets used.
This method is called by
ToolManager.trigger_tool
.- Parameters:
- event
Event
The canvas event that caused this tool to be called.
- senderobject
Object that requested the tool to be triggered.
- dataobject
Extra data.
- event
- class matplotlib.backend_tools.ToolGrid(toolmanager, name)[source]#
Bases:
ToolBase
Tool to toggle the major grids of the figure.
- property default_keymap#
- description = 'Toggle major grids'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- trigger(sender, event, data=None)[source]#
Called when this tool gets used.
This method is called by
ToolManager.trigger_tool
.- Parameters:
- event
Event
The canvas event that caused this tool to be called.
- senderobject
Object that requested the tool to be triggered.
- dataobject
Extra data.
- event
- class matplotlib.backend_tools.ToolHelpBase(toolmanager, name)[source]#
Bases:
ToolBase
- property default_keymap#
- description = 'Print tool list, shortcuts and description'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- class matplotlib.backend_tools.ToolHome(toolmanager, name)[source]#
Bases:
ViewsPositionsBase
Restore the original view limits.
- property default_keymap#
- class matplotlib.backend_tools.ToolMinorGrid(toolmanager, name)[source]#
Bases:
ToolBase
Tool to toggle the major and minor grids of the figure.
- property default_keymap#
- description = 'Toggle major and minor grids'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- trigger(sender, event, data=None)[source]#
Called when this tool gets used.
This method is called by
ToolManager.trigger_tool
.- Parameters:
- event
Event
The canvas event that caused this tool to be called.
- senderobject
Object that requested the tool to be triggered.
- dataobject
Extra data.
- event
- class matplotlib.backend_tools.ToolPan(*args)[source]#
Bases:
ZoomPanBase
Pan axes with left mouse, zoom with right.
- property default_keymap#
- description = 'Pan axes with left mouse, zoom with right'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- class matplotlib.backend_tools.ToolQuit(toolmanager, name)[source]#
Bases:
ToolBase
Tool to call the figure manager destroy method.
- property default_keymap#
- description = 'Quit the figure'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- trigger(sender, event, data=None)[source]#
Called when this tool gets used.
This method is called by
ToolManager.trigger_tool
.- Parameters:
- event
Event
The canvas event that caused this tool to be called.
- senderobject
Object that requested the tool to be triggered.
- dataobject
Extra data.
- event
- class matplotlib.backend_tools.ToolQuitAll(toolmanager, name)[source]#
Bases:
ToolBase
Tool to call the figure manager destroy method.
- property default_keymap#
- description = 'Quit all figures'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- trigger(sender, event, data=None)[source]#
Called when this tool gets used.
This method is called by
ToolManager.trigger_tool
.- Parameters:
- event
Event
The canvas event that caused this tool to be called.
- senderobject
Object that requested the tool to be triggered.
- dataobject
Extra data.
- event
- class matplotlib.backend_tools.ToolSetCursor(*args, **kwargs)[source]#
Bases:
ToolBase
Change to the current cursor while inaxes.
This tool, keeps track of all
ToolToggleBase
derived tools, and updates the cursor when a tool gets triggered.
- class matplotlib.backend_tools.ToolToggleBase(*args, **kwargs)[source]#
Bases:
ToolBase
Toggleable tool.
Every time it is triggered, it switches between enable and disable.
- Parameters:
- ``*args``
Variable length argument to be used by the Tool.
- ``**kwargs``
toggled
if present and True, sets the initial state of the Tool Arbitrary keyword arguments to be consumed by the Tool
- cursor = None#
Cursor to use when the tool is active.
- default_toggled = False#
Default of toggled state.
- disable(event=None)[source]#
Disable the toggle tool.
trigger
call this method whentoggled
is True.This can happen in different circumstances.
Click on the toolbar tool button.
Call to
matplotlib.backend_managers.ToolManager.trigger_tool
.Another
ToolToggleBase
derived tool is triggered (from the sameToolManager
).
- radio_group = None#
Attribute to group 'radio' like tools (mutually exclusive).
str
that identifies the group or None if not belonging to a group.
- property toggled#
State of the toggled tool.
- class matplotlib.backend_tools.ToolViewsPositions(*args, **kwargs)[source]#
Bases:
ToolBase
Auxiliary Tool to handle changes in views and positions.
Runs in the background and should get used by all the tools that need to access the figure's history of views and positions, e.g.
- push_current(figure=None)[source]#
Push the current view limits and position onto their respective stacks.
- class matplotlib.backend_tools.ToolXScale(*args, **kwargs)[source]#
Bases:
AxisScaleBase
Tool to toggle between linear and logarithmic scales on the X axis.
- property default_keymap#
- class matplotlib.backend_tools.ToolYScale(*args, **kwargs)[source]#
Bases:
AxisScaleBase
Tool to toggle between linear and logarithmic scales on the Y axis.
- property default_keymap#
- class matplotlib.backend_tools.ToolZoom(*args)[source]#
Bases:
ZoomPanBase
A Tool for zooming using a rectangle selector.
- property default_keymap#
- description = 'Zoom to rectangle'#
Description of the Tool.
str
: Tooltip used if the Tool is included in a Toolbar.
- class matplotlib.backend_tools.ViewsPositionsBase(toolmanager, name)[source]#
Bases:
ToolBase
Base class for
ToolHome
,ToolBack
andToolForward
.- trigger(sender, event, data=None)[source]#
Called when this tool gets used.
This method is called by
ToolManager.trigger_tool
.- Parameters:
- event
Event
The canvas event that caused this tool to be called.
- senderobject
Object that requested the tool to be triggered.
- dataobject
Extra data.
- event
- class matplotlib.backend_tools.ZoomPanBase(*args)[source]#
Bases:
ToolToggleBase
- matplotlib.backend_tools.add_tools_to_container(container, tools=[['navigation', ['home', 'back', 'forward']], ['zoompan', ['pan', 'zoom', 'subplots']], ['io', ['save', 'help']]])[source]#
Add multiple tools to the container.
- Parameters:
- containerContainer
backend_bases.ToolContainerBase
object that will get the tools added.- toolslist, optional
List in the form
[[group1, [tool1, tool2 ...]], [group2, [...]]]
where the tools[tool1, tool2, ...]
will display in group1. Seebackend_bases.ToolContainerBase.add_tool
for details.
- matplotlib.backend_tools.add_tools_to_manager(toolmanager, tools={'back': <class 'matplotlib.backend_tools.ToolBack'>, 'copy': <class 'matplotlib.backend_tools.ToolCopyToClipboardBase'>, 'cursor': <class 'matplotlib.backend_tools.ToolSetCursor'>, 'forward': <class 'matplotlib.backend_tools.ToolForward'>, 'fullscreen': <class 'matplotlib.backend_tools.ToolFullScreen'>, 'grid': <class 'matplotlib.backend_tools.ToolGrid'>, 'grid_minor': <class 'matplotlib.backend_tools.ToolMinorGrid'>, 'help': <class 'matplotlib.backend_tools.ToolHelpBase'>, 'home': <class 'matplotlib.backend_tools.ToolHome'>, 'pan': <class 'matplotlib.backend_tools.ToolPan'>, 'position': <class 'matplotlib.backend_tools.ToolCursorPosition'>, 'quit': <class 'matplotlib.backend_tools.ToolQuit'>, 'quit_all': <class 'matplotlib.backend_tools.ToolQuitAll'>, 'rubberband': <class 'matplotlib.backend_tools.RubberbandBase'>, 'save': <class 'matplotlib.backend_tools.SaveFigureBase'>, 'subplots': <class 'matplotlib.backend_tools.ConfigureSubplotsBase'>, 'viewpos': <class 'matplotlib.backend_tools.ToolViewsPositions'>, 'xscale': <class 'matplotlib.backend_tools.ToolXScale'>, 'yscale': <class 'matplotlib.backend_tools.ToolYScale'>, 'zoom': <class 'matplotlib.backend_tools.ToolZoom'>})[source]#
Add multiple tools to a
ToolManager
.- Parameters:
- toolmanager
backend_managers.ToolManager
Manager to which the tools are added.
- tools{str: class_like}, optional
The tools to add in a {name: tool} dict, see
backend_managers.ToolManager.add_tool
for more info.
- toolmanager