matplotlib.widgets#
GUI-neutrale Widgets#
Widgets, die für jedes der GUI-Backends konzipiert sind. Alle diese Widgets erfordern, dass Sie eine Axes-Instanz vordefinieren und diese als ersten Parameter übergeben. Matplotlib versucht nicht, zu intelligent in Bezug auf das Layout zu sein -- Sie müssen herausfinden, wie breit und hoch Ihre Achsen sein sollen, um Ihr Widget aufzunehmen.
- class matplotlib.widgets.AxesWidget(ax)[Quelle]#
Basisklassen:
WidgetWidget, das mit einer einzelnen
Axesverbunden ist.Um sicherzustellen, dass das Widget reaktionsfähig bleibt und nicht vom Garbage Collector bereinigt wird, sollte der Benutzer eine Referenz auf das Objekt aufrechterhalten.
Dies ist notwendig, da die Callback-Registry nur schwache Referenzen auf die Funktionen speichert, die Member-Funktionen des Widgets sind. Wenn keine Referenzen auf das Widget-Objekt vorhanden sind, kann es vom Garbage Collector bereinigt werden, was die Callbacks trennt.
- Attribute:
- ax
Axes Die übergeordnete Achse (Axes) für das Widget.
- canvas
FigureCanvasBase Die übergeordnete Figure-Leinwand (canvas) für das Widget.
activeboolIst das Widget aktiv?
- ax
- property canvas#
- class matplotlib.widgets.Button(ax, label, image=None, color='0.85', hovercolor='0.95', *, useblit=True)[Quelle]#
Basisklassen:
AxesWidgetEin GUI-neutraler Button.
Damit der Button reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten. Rufen Sie
on_clickedauf, um sich mit dem Button zu verbinden.- Attribute:
- Parameter:
- ax
Axes Die
Axes-Instanz, in die der Button platziert wird.- labelstr
Der Button-Text.
- imageArray-ähnlich oder PIL-Bild
Das Bild, das in den Button eingefügt werden soll, wenn nicht *None*. Der Parameter wird direkt an
imshowweitergeleitet.- colorFarbe
Die Farbe des Buttons, wenn er nicht aktiviert ist.
- hovercolorFarbe
Die Farbe des Buttons, wenn die Maus darüber ist.
- useblitbool, Standard: True
Verwendet Blitting für schnelleres Zeichnen, falls vom Backend unterstützt. Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
Hinzugefügt in Version 3.7.
- ax
- class matplotlib.widgets.CheckButtons(ax, labels, actives=None, *, useblit=True, label_props=None, frame_props=None, check_props=None)[Quelle]#
Basisklassen:
AxesWidgetEin GUI-neutraler Satz von Checkboxen.
Damit die Checkboxen reaktionsfähig bleiben, müssen Sie eine Referenz auf dieses Objekt behalten. Verbinden Sie sich mit den CheckButtons über die Methode
on_clicked.Verbinden Sie sich mit den CheckButtons über die Methode
on_clicked.- Attribute:
Fügt Checkboxen zur
Axes-Instanz ax hinzu.- Parameter:
- ax
Axes Die übergeordnete Achse (Axes) für das Widget.
- labelslist of str
Die Bezeichnungen der Checkboxen.
- activesListe von bool, optional
Die anfänglichen Zustände der Buttons. Die Liste muss die gleiche Länge wie labels haben. Wenn nicht angegeben, sind alle Buttons nicht angekreuzt.
- useblitbool, Standard: True
Verwendet Blitting für schnelleres Zeichnen, falls vom Backend unterstützt. Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
Hinzugefügt in Version 3.7.
- label_propsdict, optional
Dictionary von
Text-Eigenschaften, die für die Labels verwendet werden sollen.Hinzugefügt in Version 3.7.
- frame_propsdict, optional
Dictionary von Scatter
Collection-Eigenschaften, die für den Rahmen der Checkbuttons verwendet werden sollen. Standardmäßig (Schriftgröße des Labels / 2)**2 Größe, schwarzer Rand, keine Füllfarbe und 1,0 Linienbreite.Hinzugefügt in Version 3.7.
- check_propsdict, optional
Dictionary von Scatter
Collection-Eigenschaften, die für den Haken der Checkbuttons verwendet werden sollen. Standardmäßig (Schriftgröße des Labels / 2)**2 Größe, schwarze Farbe und 1,0 Linienbreite.Hinzugefügt in Version 3.7.
- ax
- on_clicked(func)[Quelle]#
Verbindet die Callback-Funktion *func* mit Button-Klick-Ereignissen.
- Parameter:
- funcaufrufbar
Wenn der Button geklickt wird, wird func mit dem Button-Label aufgerufen. Wenn alle Buttons gelöscht werden, wird func mit None aufgerufen. Die Callback-Funktion func muss die Signatur haben
def func(label: str | None) -> Any
Rückgabewerte können vorhanden sein, werden aber ignoriert.
- Gibt zurück:
- Eine Verbindungs-ID, die zum Trennen des Callbacks verwendet werden kann.
- set_active(index, state=None)[Quelle]#
Ändert den Zustand eines Checkbuttons anhand seines Index.
Callbacks werden ausgelöst, wenn
eventsonTrue ist.- Parameter:
- indexint
Index des zu schaltenden Checkbuttons.
- statebool, optional
Wenn ein boolescher Wert angegeben ist, wird der Zustand explizit gesetzt. Wenn kein Wert angegeben ist, wird der Zustand umgeschaltet.
- Löst aus:
- ValueError
Wenn index ungültig ist.
- TypeError
Wenn state kein boolescher Wert ist.
- set_check_props(props)[Quelle]#
Setzt die Eigenschaften der Checkbutton-Haken.
Hinzugefügt in Version 3.7.
- Parameter:
- propsdict
Dictionary von
Collection-Eigenschaften, die für den Haken des Checkbuttons verwendet werden sollen.
- set_frame_props(props)[Quelle]#
Setzt die Eigenschaften der Checkbutton-Rahmen.
Hinzugefügt in Version 3.7.
- Parameter:
- propsdict
Dictionary von
Collection-Eigenschaften, die für die Rahmen der Checkbuttons verwendet werden sollen.
- class matplotlib.widgets.Cursor(ax, *, horizOn=True, vertOn=True, useblit=False, **lineprops)[Quelle]#
Basisklassen:
AxesWidgetEin Fadenkreuz-Cursor, der die Achsen überspannt und sich mit dem Mauszeiger bewegt.
Damit der Cursor reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten.
- Parameter:
- ax
Axes Die
Axes, an die der Cursor angehängt werden soll.- horizOnbool, Standard: True
Ob die horizontale Linie gezeichnet werden soll.
- vertOnbool, Standard: True
Ob die vertikale Linie gezeichnet werden soll.
- useblitbool, Standard: False
Verwendet Blitting für schnelleres Zeichnen, falls vom Backend unterstützt. Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- ax
- Andere Parameter:
Beispiele
Siehe Cursor.
- class matplotlib.widgets.EllipseSelector(ax, onselect=None, *, minspanx=0, minspany=0, useblit=False, props=None, spancoords='data', button=None, grab_range=10, handle_props=None, interactive=False, state_modifier_keys=None, drag_from_anywhere=False, ignore_event_outside=False, use_data_coordinates=False)[Quelle]#
Basisklassen:
RectangleSelectorWählt einen elliptischen Bereich einer Achse aus.
Damit der Cursor reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten.
Ereignisse wie Klicken und Loslassen, die an denselben Koordinaten außerhalb der Auswahl ausgelöst werden, löschen den Selektor, es sei denn,
ignore_event_outside=True.- Parameter:
- ax
Axes Die übergeordnete Achse (Axes) für das Widget.
- onselectFunktion, optional
Eine Callback-Funktion, die nach einem Loslass-Ereignis aufgerufen wird und die Auswahl erstellt, ändert oder entfernt. Sie muss die Signatur haben
def onselect(eclick: MouseEvent, erelease: MouseEvent)
wobei eclick und erelease die Maus-Klick- und Loslass-Ereignisse
MouseEventsind, die die Auswahl starten und abschließen.- minspanxfloat, Standard: 0
Auswahlen mit einer x-Spanne, die kleiner oder gleich minspanx ist, werden entfernt (wenn bereits vorhanden) oder abgebrochen.
- minspanyfloat, Standard: 0
Auswahlen mit einer y-Spanne, die kleiner oder gleich minspanx ist, werden entfernt (wenn bereits vorhanden) oder abgebrochen.
- useblitbool, Standard: False
Ob Blitting für schnelleres Zeichnen verwendet werden soll (falls vom Backend unterstützt). Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- propsdict, optional
Eigenschaften, mit denen die Ellipse gezeichnet wird. Siehe
Patchfür gültige Eigenschaften. Standard:dict(facecolor='red', edgecolor='black', alpha=0.2, fill=True)- spancoords{"data", "pixels"}, Standard: "data"
Ob minspanx und minspany in Daten- oder Pixelkoordinaten interpretiert werden sollen.
- button
MouseButton, Liste vonMouseButton, Standard: alle Buttons Buttons, die die Auswahl des Rechtecks auslösen.
- grab_rangefloat, Standard: 10
Abstand in Pixeln, innerhalb dessen die interaktiven Tool-Handles aktiviert werden können.
- handle_propsdict, optional
Eigenschaften, mit denen die interaktiven Handles (Marker-Künstler) gezeichnet werden. Siehe die Marker-Argumente in
Line2Dfür gültige Eigenschaften. Standardwerte sind inmpl.rcParamsdefiniert, mit Ausnahme des Standardwerts fürmarkeredgecolor, der derselbe wie die Eigenschaftedgecolorin props sein wird.- interactivebool, Standard: False
Ob eine Reihe von Handles gezeichnet werden soll, die die Interaktion mit dem Widget nach dem Zeichnen ermöglichen.
- state_modifier_keysdict, optional
Tastenkombinationen, die das Verhalten des Widgets beeinflussen. Werte ergänzen die Standardwerte, welche sind
"move": Verschiebt die vorhandene Form, Standard: keine Modifikatortaste.
"clear": Löscht die aktuelle Form, Standard: "escape".
"square": Erzeugt eine quadratische Form, Standard: "shift".
"center": Ändert die Form um ihr Zentrum, Standard: "ctrl".
"rotate": Dreht die Form um ihr Zentrum zwischen -45° und 45°, Standard: "r".
"square" und "center" können kombiniert werden. Die quadratische Form kann in Daten- oder Anzeigekoordinaten definiert werden, wie durch das Argument
use_data_coordinatesbestimmt, das bei der Erstellung des Selektors angegeben wurde.- drag_from_anywherebool, Standard: False
Wenn
True, kann das Widget durch Klicken irgendwo innerhalb seiner Grenzen verschoben werden.- ignore_event_outsidebool, Standard: False
Wenn
True, wird das außerhalb des Span-Selektors ausgelöste Ereignis ignoriert.- use_data_coordinatesbool, Standard: False
Wenn
True, wird die "quadratische" Form des Selektors in Datenkoordinaten anstelle von Anzeigekoordinaten definiert.
- ax
Beispiele
- class matplotlib.widgets.Lasso(ax, xy, callback, *, useblit=True, props=None)[Quelle]#
Basisklassen:
AxesWidgetAuswahlkurve einer beliebigen Form.
Der ausgewählte Pfad kann in Verbindung mit
contains_pointverwendet werden, um Datenpunkte aus einem Bild auszuwählen.Im Gegensatz zu
LassoSelectormuss dies mit einem Startpunkt xy initialisiert werden, und dieLasso-Ereignisse werden nach dem Loslassen zerstört.- Parameter:
- ax
Axes Die übergeordnete Achse (Axes) für das Widget.
- xy(float, float)
Koordinaten des Startpunkts des Lassos.
- callbackaufrufbar
Jedes Mal, wenn der Lasso losgelassen wird, wird die callback-Funktion aufgerufen und ihr die Eckpunkte des ausgewählten Pfades übergeben.
- useblitbool, Standard: True
Ob Blitting für schnelleres Zeichnen verwendet werden soll (falls vom Backend unterstützt). Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- props: dict, optional
Lasso-Linien-Eigenschaften. Siehe
Line2Dfür gültige Eigenschaften. Standard-props sind{'linestyle' : '-', 'color' : 'black', 'lw' : 2}
Hinzugefügt in Version 3.9.
- ax
- class matplotlib.widgets.LassoSelector(ax, onselect=None, *, useblit=True, props=None, button=None)[Quelle]#
Basisklassen:
_SelectorWidgetAuswahlkurve einer beliebigen Form.
Damit der Selektor reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten.
Der ausgewählte Pfad kann in Verbindung mit
contains_pointverwendet werden, um Datenpunkte aus einem Bild auszuwählen.Im Gegensatz zu
LassoistLassoSelectormit einer ähnlichen Schnittstelle wieRectangleSelectorundSpanSelectorgeschrieben und interagiert mit den Achsen, bis er getrennt wird.Beispielverwendung
ax = plt.subplot() ax.plot(x, y) def onselect(verts): print(verts) lasso = LassoSelector(ax, onselect)
- Parameter:
- ax
Axes Die übergeordnete Achse (Axes) für das Widget.
- onselectFunktion, optional
Jedes Mal, wenn der Lasso losgelassen wird, wird die Funktion onselect aufgerufen und ihr die Eckpunkte des ausgewählten Pfades übergeben.
- useblitbool, Standard: True
Ob Blitting für schnelleres Zeichnen verwendet werden soll (falls vom Backend unterstützt). Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- propsdict, optional
Eigenschaften, mit denen die Linie gezeichnet wird, siehe
Line2Dfür gültige Eigenschaften. Standardwerte sind inmpl.rcParamsdefiniert.- button
MouseButtonoder Liste vonMouseButton, optional Die Maustasten, die für die Auswahl des Rechtecks verwendet werden. Standard ist
None, was allen Tasten entspricht.
- ax
- class matplotlib.widgets.LockDraw[Quelle]#
Bases:
objectEinige Widgets, wie der Cursor, zeichnen auf die Leinwand, und dies ist nicht immer wünschenswert, z. B. wenn die Werkzeugleiste im Zoom-zu-Rechteck-Modus ist und ein Rechteck zeichnet. Um dies zu vermeiden, kann ein Widget einen Sperrmechanismus der Leinwand mit
canvas.widgetlock(widget)erwerben, bevor es auf die Leinwand zeichnet; dies verhindert, dass andere Widgets dies zur gleichen Zeit tun (wenn sie ebenfalls versuchen, zuerst die Sperre zu erwerben).
- class matplotlib.widgets.MultiCursor(canvas, axes, *, useblit=True, horizOn=False, vertOn=True, **lineprops)[source]#
Basisklassen:
WidgetStellt einen vertikalen (Standard) und/oder horizontalen Linien-Cursor bereit, der zwischen mehreren Achsen geteilt wird.
Damit der Cursor reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten.
- Parameter:
- canvasobject
Dieser Parameter wird überhaupt nicht verwendet und nur zur Abwärtskompatibilität beibehalten.
- axeslist of
Axes Die
Axes, an die der Cursor angehängt werden soll.- useblitbool, Standard: True
Verwendet Blitting für schnelleres Zeichnen, falls vom Backend unterstützt. Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- horizOnbool, default: False
Ob die horizontale Linie gezeichnet werden soll.
- vertOnbool, Standard: True
Ob die vertikale Linie gezeichnet werden soll.
- Andere Parameter:
Beispiele
Siehe Multicursor.
- class matplotlib.widgets.PolygonSelector(ax, onselect=None, *, useblit=False, props=None, handle_props=None, grab_range=10, draw_bounding_box=False, box_handle_props=None, box_props=None)[source]#
Basisklassen:
_SelectorWidgetWählt einen polygonalen Bereich einer Achse aus.
Setzen Sie Scheitelpunkte mit jedem Mausklick und vervollständigen Sie die Auswahl, indem Sie das Polygon schließen (Klick auf den ersten Scheitelpunkt). Sobald einzelne Scheitelpunkte gezeichnet wurden, können diese durch Klicken und Ziehen mit der linken Maustaste verschoben oder durch Klicken mit der rechten Maustaste entfernt werden.
Zusätzlich können die folgenden Modifikatortasten verwendet werden:
Halten Sie die **Strg**-Taste gedrückt und klicken und ziehen Sie einen Scheitelpunkt, um ihn neu zu positionieren, bevor das Polygon geschlossen wurde.
Halten Sie die **Umschalttaste** gedrückt und klicken und ziehen Sie irgendwo in der Achse, um alle Scheitelpunkte zu verschieben.
Drücken Sie die **Esc**-Taste, um ein neues Polygon zu starten.
Damit der Selektor reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten.
- Parameter:
- ax
Axes Die übergeordnete Achse (Axes) für das Widget.
- onselectFunktion, optional
Wenn ein Polygon geschlossen oder nach dem Schließen geändert wird, wird die Funktion *onselect* aufgerufen und eine Liste der Scheitelpunkte als Tupel
(xdata, ydata)übergeben.- useblitbool, Standard: False
Ob Blitting für schnelleres Zeichnen verwendet werden soll (falls vom Backend unterstützt). Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- propsdict, optional
Eigenschaften, mit denen die Linie gezeichnet wird, siehe
Line2Dfür gültige Eigenschaften. Standarddict(color='k', linestyle='-', linewidth=2, alpha=0.5)
- handle_propsdict, optional
Künstler-Eigenschaften für die Markierungen, die an den Scheitelpunkten des Polygons gezeichnet werden. Siehe die Markierungsargumente in
Line2Dfür gültige Eigenschaften. Standardwerte sind inmpl.rcParamsdefiniert, mit Ausnahme des Standardwerts fürmarkeredgecolor, der derselbe wie diecolor-Eigenschaft in props ist.- grab_rangefloat, Standard: 10
Ein Scheitelpunkt wird ausgewählt (um das Polygon zu schließen oder einen Scheitelpunkt zu verschieben), wenn der Mausklick innerhalb eines Bereichs von grab_range Pixel vom Scheitelpunkt entfernt ist.
- draw_bounding_boxbool, optional
Wenn
True, wird ein Begrenzungsrahmen um den Polygonselektor gezeichnet, sobald dieser abgeschlossen ist. Dieser Rahmen kann zum Verschieben und Ändern der Größe des Selektors verwendet werden.- box_handle_propsdict, optional
Eigenschaften, die für die Box-Handles gesetzt werden sollen. Siehe die Dokumentation für das Argument handle_props von
RectangleSelectorfür weitere Informationen.- box_propsdict, optional
Eigenschaften, die für die Box gesetzt werden sollen. Siehe die Dokumentation für das Argument props von
RectangleSelectorfür weitere Informationen.
- ax
Anmerkungen
Wenn nach dem Entfernen von Punkten nur noch ein Punkt übrig ist, kehrt der Selektor in einen unvollständigen Zustand zurück und Sie können ein neues Polygon vom vorhandenen Punkt aus zeichnen.
Beispiele
Polygon Selector Wählen Sie Indizes aus einer Sammlung mit Polygonselektor aus
- property verts#
Die Polygon-Scheitelpunkte, als Liste von
(x, y)-Tupeln.
- class matplotlib.widgets.RadioButtons(ax, labels, active=0, activecolor=None, *, useblit=True, label_props=None, radio_props=None)[source]#
Basisklassen:
AxesWidgetEin GUI-neutraler Radiobutton.
Damit die Schaltflächen reaktionsfähig bleiben, müssen Sie eine Referenz auf dieses Objekt behalten. Rufen Sie
on_clickedauf, um sich mit dem Schaltflächenereignis zu verbinden.Verbinden Sie sich mit den RadioButtons über die Methode
on_clicked.- Attribute:
- ax
Axes Die übergeordnete Achse (Axes) für das Widget.
- activecolorcolor
Die Farbe der ausgewählten Schaltfläche.
- labelsListe von
Text Die Beschriftungen der Schaltflächen.
- value_selectedstr
Der Beschriftungstext der aktuell ausgewählten Schaltfläche.
- index_selectedint
Der Index der ausgewählten Schaltfläche.
- ax
Fügt ein
AxesRadiobuttons hinzu.- Parameter:
- ax
Axes Die Achse, zu der die Schaltflächen hinzugefügt werden sollen.
- labelslist of str
Die Beschriftungen der Schaltflächen.
- activeint
Der Index der anfangs ausgewählten Schaltfläche.
- activecolorcolor
Die Farbe der ausgewählten Schaltfläche. Der Standardwert ist
'blue', wenn er hier oder in radio_props nicht angegeben ist.- useblitbool, Standard: True
Verwendet Blitting für schnelleres Zeichnen, falls vom Backend unterstützt. Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
Hinzugefügt in Version 3.7.
- label_propsdict or list of dict, optional
Dictionary von
Text-Eigenschaften, die für die Labels verwendet werden sollen.Hinzugefügt in Version 3.7.
- radio_propsdict, optional
Dictionary von Scatter
Collection-Eigenschaften, die für die Radiobuttons verwendet werden sollen. Standardmäßig (Schriftgröße der Beschriftung / 2)**2 Größe, schwarze Kantenfarbe und activecolor-Flächenfarbe (wenn aktiv).Hinweis
Wenn eine Flächenfarbe in radio_props angegeben wird, überschreibt sie activecolor. Dies kann verwendet werden, um eine aktive Farbe pro Schaltfläche bereitzustellen.
Hinzugefügt in Version 3.7.
- ax
- property activecolor#
- on_clicked(func)[source]#
Verbindet die Callback-Funktion *func* mit Button-Klick-Ereignissen.
- Parameter:
- funcaufrufbar
Wenn der Button geklickt wird, wird func mit dem Button-Label aufgerufen. Wenn alle Buttons gelöscht werden, wird func mit None aufgerufen. Die Callback-Funktion func muss die Signatur haben
def func(label: str | None) -> Any
Rückgabewerte können vorhanden sein, werden aber ignoriert.
- Gibt zurück:
- Eine Verbindungs-ID, die zum Trennen des Callbacks verwendet werden kann.
- set_active(index)[source]#
Wählt die Schaltfläche mit der Nummer index aus.
Callbacks werden ausgelöst, wenn
eventsonTrue ist.- Parameter:
- indexint
Der Index der zu aktivierenden Schaltfläche.
- Löst aus:
- ValueError
Wenn der Index ungültig ist.
- set_label_props(props)[source]#
Setzt die Eigenschaften der
Text-Labels.Hinzugefügt in Version 3.7.
- Parameter:
- propsdict
Dictionary von
Text-Eigenschaften, die für die Labels verwendet werden sollen.
- set_radio_props(props)[source]#
Setzt die Eigenschaften der
Text-Labels.Hinzugefügt in Version 3.7.
- Parameter:
- propsdict
Dictionary von
Collection-Eigenschaften, die für die Radiobuttons verwendet werden sollen.
- 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:
SliderBaseEin Schieberegler, der einen Bereich von Gleitkommawerten darstellt. Definiert das Minimum und Maximum des Bereichs über das Attribut val als Tupel von (min, max).
Erstellt einen Schieberegler, der einen Bereich innerhalb von [valmin, valmax] in der Achse ax darstellt. Damit der Schieberegler reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten. Rufen Sie
on_changed()auf, um sich mit dem Schieberegler-Ereignis zu verbinden.- Attribute:
- valtuple of float
Schiebereglerwert.
- Parameter:
- axAxes
Die Achse, in der der Schieberegler platziert werden soll.
- labelstr
Schieberegler-Beschriftung.
- valminfloat
Der Mindestwert des Schiebereglers.
- valmaxfloat
Der Höchstwert des Schiebereglers.
- valinittuple of float or None, default: None
Die Anfangspositionen des Schiebereglers. Wenn None, werden die Anfangspositionen auf dem 25. und 75. Perzentil des Bereichs liegen.
- valfmtstr, default: None
%-Formatzeichenkette zur Formatierung der Schiebereglerwerte. Wenn None, wird stattdessen ein
ScalarFormatterverwendet.- closedminbool, default: True
Ob das Schieberegler-Intervall unten geschlossen ist.
- closedmaxbool, default: True
Ob das Schieberegler-Intervall oben geschlossen ist.
- draggingbool, default: True
Wenn True, kann der Schieberegler per Maus gezogen werden.
- valstepfloat, default: None
Wenn angegeben, rastet der Schieberegler an Vielfachen von valstep ein.
- orientation{'horizontal', 'vertical'}, Standard: 'horizontal'
Die Ausrichtung des Schiebereglers.
- track_colorcolor, default: 'lightgrey'
Die Farbe der Hintergrundspur. Die Spur kann über das Attribut track weiter gestylt werden.
- handle_styledict
Eigenschaften der Schieberegler-Handles. Standardwerte sind
Schlüssel
Wert
Standard
Beschreibung
Füllfarbe (facecolor)
color
'white'
Die Flächenfarbe der Schieberegler-Handles.
Randfarbe (edgecolor)
color
'.75'
Die Kantenfarbe der Schieberegler-Handles.
size
int
10
Die Größe der Schieberegler-Handles in Punkten.
Andere Werte werden als marker{foo} transformiert und an den
Line2D-Konstruktor übergeben. z.B.handle_style = {'style'='x'}führt zumarkerstyle = 'x'.
Anmerkungen
Zusätzliche Schlüsselwortargumente werden an
self.polyübergeben, das ist dasPolygon, das den Schiebereglerknopf zeichnet. Siehe die Dokumentation zuPolygonfür gültige Eigenschaftsnamen (facecolor,edgecolor,alpha, etc.).- on_changed(func)[source]#
Verbindet func als Callback-Funktion für Änderungen des Schiebereglerwerts.
- Parameter:
- funcaufrufbar
Funktion, die aufgerufen werden soll, wenn der Schieberegler geändert wird. Die Funktion muss ein 2-Tupel von Gleitkommazahlen als Argument akzeptieren.
- Gibt zurück:
- int
Verbindungs-ID (die verwendet werden kann, um func zu trennen).
- class matplotlib.widgets.RectangleSelector(ax, onselect=None, *, minspanx=0, minspany=0, useblit=False, props=None, spancoords='data', button=None, grab_range=10, handle_props=None, interactive=False, state_modifier_keys=None, drag_from_anywhere=False, ignore_event_outside=False, use_data_coordinates=False)[source]#
Basisklassen:
_SelectorWidgetWählt einen rechteckigen Bereich einer Achse aus.
Damit der Cursor reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten.
Ereignisse wie Klicken und Loslassen, die an denselben Koordinaten außerhalb der Auswahl ausgelöst werden, löschen den Selektor, es sei denn,
ignore_event_outside=True.- Parameter:
- ax
Axes Die übergeordnete Achse (Axes) für das Widget.
- onselectFunktion, optional
Eine Callback-Funktion, die nach einem Loslass-Ereignis aufgerufen wird und die Auswahl erstellt, ändert oder entfernt. Sie muss die Signatur haben
def onselect(eclick: MouseEvent, erelease: MouseEvent)
wobei eclick und erelease die Maus-Klick- und Loslass-Ereignisse
MouseEventsind, die die Auswahl starten und abschließen.- minspanxfloat, Standard: 0
Auswahlen mit einer x-Spanne, die kleiner oder gleich minspanx ist, werden entfernt (wenn bereits vorhanden) oder abgebrochen.
- minspanyfloat, Standard: 0
Auswahlen mit einer y-Spanne, die kleiner oder gleich minspanx ist, werden entfernt (wenn bereits vorhanden) oder abgebrochen.
- useblitbool, Standard: False
Ob Blitting für schnelleres Zeichnen verwendet werden soll (falls vom Backend unterstützt). Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- propsdict, optional
Eigenschaften, mit denen das Rechteck gezeichnet wird. Siehe
Patchfür gültige Eigenschaften. Standarddict(facecolor='red', edgecolor='black', alpha=0.2, fill=True)- spancoords{"data", "pixels"}, Standard: "data"
Ob minspanx und minspany in Daten- oder Pixelkoordinaten interpretiert werden sollen.
- button
MouseButton, Liste vonMouseButton, Standard: alle Buttons Buttons, die die Auswahl des Rechtecks auslösen.
- grab_rangefloat, Standard: 10
Abstand in Pixeln, innerhalb dessen die interaktiven Tool-Handles aktiviert werden können.
- handle_propsdict, optional
Eigenschaften, mit denen die interaktiven Handles (Marker-Künstler) gezeichnet werden. Siehe die Marker-Argumente in
Line2Dfür gültige Eigenschaften. Standardwerte sind inmpl.rcParamsdefiniert, mit Ausnahme des Standardwerts fürmarkeredgecolor, der derselbe wie die Eigenschaftedgecolorin props sein wird.- interactivebool, Standard: False
Ob eine Reihe von Handles gezeichnet werden soll, die die Interaktion mit dem Widget nach dem Zeichnen ermöglichen.
- state_modifier_keysdict, optional
Tastenkombinationen, die das Verhalten des Widgets beeinflussen. Werte ergänzen die Standardwerte, welche sind
"move": Verschiebt die vorhandene Form, Standard: keine Modifikatortaste.
"clear": Löscht die aktuelle Form, Standard: "escape".
"square": Erzeugt eine quadratische Form, Standard: "shift".
"center": Ändert die Form um ihr Zentrum, Standard: "ctrl".
"rotate": Dreht die Form um ihr Zentrum zwischen -45° und 45°, Standard: "r".
"square" und "center" können kombiniert werden. Die quadratische Form kann in Daten- oder Anzeigekoordinaten definiert werden, wie durch das Argument
use_data_coordinatesbestimmt, das bei der Erstellung des Selektors angegeben wurde.- drag_from_anywherebool, Standard: False
Wenn
True, kann das Widget durch Klicken irgendwo innerhalb seiner Grenzen verschoben werden.- ignore_event_outsidebool, Standard: False
Wenn
True, wird das außerhalb des Span-Selektors ausgelöste Ereignis ignoriert.- use_data_coordinatesbool, Standard: False
Wenn
True, wird die "quadratische" Form des Selektors in Datenkoordinaten anstelle von Anzeigekoordinaten definiert.
- ax
Beispiele
>>> import matplotlib.pyplot as plt >>> import matplotlib.widgets as mwidgets >>> fig, ax = plt.subplots() >>> ax.plot([1, 2, 3], [10, 50, 100]) >>> def onselect(eclick, erelease): ... print(eclick.xdata, eclick.ydata) ... print(erelease.xdata, erelease.ydata) >>> props = dict(facecolor='blue', alpha=0.5) >>> rect = mwidgets.RectangleSelector(ax, onselect, interactive=True, ... props=props) >>> fig.show() >>> rect.add_state('square')
Siehe auch: Rectangle and ellipse selectors
- property center#
Mittelpunkt des Rechtecks in Datenkoordinaten.
- property corners#
Eckpunkte des Rechtecks in Datenkoordinaten, beginnend von unten links, im Uhrzeigersinn.
- property edge_centers#
Mittelpunkte der Rechteckkanten in Datenkoordinaten, beginnend links und gegen den Uhrzeigersinn.
- property extents#
Gibt (xmin, xmax, ymin, ymax) in Datenkoordinaten zurück, wie sie durch den Begrenzungsrahmen vor der Rotation definiert sind.
- property geometry#
Gibt ein Array der Form (2, 5) zurück, das die x- (
RectangleSelector.geometry[1, :]) und y- (RectangleSelector.geometry[0, :]) Datenkoordinaten der vier Ecken des Rechtecks enthält, beginnend und endend in der oberen linken Ecke.
- property rotation#
Rotation in Grad im Intervall [-45°, 45°]. Die Rotation ist im Bereich begrenzt, um die Implementierung einfach zu halten.
- class matplotlib.widgets.Slider(ax, label, valmin, valmax, *, valinit=0.5, valfmt=None, closedmin=True, closedmax=True, slidermin=None, slidermax=None, dragging=True, valstep=None, orientation='horizontal', initcolor='r', track_color='lightgrey', handle_style=None, **kwargs)[source]#
Bases:
SliderBaseEin Schieberegler, der einen Gleitkomma-Bereich darstellt.
Erstellt einen Schieberegler von valmin bis valmax in der Achse ax. Damit der Schieberegler reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten. Rufen Sie
on_changed()auf, um sich mit dem Schieberegler-Ereignis zu verbinden.- Attribute:
- valfloat
Schiebereglerwert.
- Parameter:
- axAxes
Die Achse, in der der Schieberegler platziert werden soll.
- labelstr
Schieberegler-Beschriftung.
- valminfloat
Der Mindestwert des Schiebereglers.
- valmaxfloat
Der Höchstwert des Schiebereglers.
- valinitfloat, default: 0.5
Die Anfangsposition des Schiebereglers.
- valfmtstr, default: None
%-Formatzeichenkette zur Formatierung des Schiebereglerwerts. Wenn None, wird stattdessen ein
ScalarFormatterverwendet.- closedminbool, default: True
Ob das Schieberegler-Intervall unten geschlossen ist.
- closedmaxbool, default: True
Ob das Schieberegler-Intervall oben geschlossen ist.
- sliderminSlider, default: None
Verhindert, dass der aktuelle Schieberegler einen Wert kleiner als der Wert des Schiebereglers slidermin hat.
- slidermaxSlider, default: None
Verhindert, dass der aktuelle Schieberegler einen Wert größer als der Wert des Schiebereglers slidermax hat.
- draggingbool, default: True
Wenn True, kann der Schieberegler per Maus gezogen werden.
- valstepfloat or array-like, default: None
Wenn ein Float, rastet der Schieberegler auf Vielfache von valstep ein. Wenn ein Array, rastet der Schieberegler auf die Werte im Array ein.
- orientation{'horizontal', 'vertical'}, Standard: 'horizontal'
Die Ausrichtung des Schiebereglers.
- initcolorFarbe, Standard: 'r'
Die Farbe der Linie an der Position valinit. Auf
'none'setzen für keine Linie.- track_colorcolor, default: 'lightgrey'
Die Farbe der Hintergrundspur. Die Spur kann über das Attribut track weiter gestylt werden.
- handle_styledict
Eigenschaften des Schieberegler-Handles. Standardwerte sind
Schlüssel
Wert
Standard
Beschreibung
Füllfarbe (facecolor)
color
'white'
Die Füllfarbe des Schieberegler-Handles.
Randfarbe (edgecolor)
color
'.75'
Die Kantenfarbe des Schieberegler-Handles.
size
int
10
Die Größe des Schieberegler-Handles in Punkten.
Andere Werte werden als marker{foo} transformiert und an den
Line2D-Konstruktor übergeben. z.B.handle_style = {'style'='x'}führt zumarkerstyle = 'x'.
Anmerkungen
Zusätzliche kwargs werden an
self.polyweitergegeben, welches dasRectangleist, das den Schieberegler-Knopf zeichnet. Sehen Sie die Dokumentation vonRectanglefür gültige Eigenschaftsnamen (facecolor,edgecolor,alpha, etc.).- on_changed(func)[Quelle]#
Verbindet func als Callback-Funktion für Änderungen des Schiebereglerwerts.
- Parameter:
- funcaufrufbar
Funktion, die aufgerufen wird, wenn sich der Schieberegler ändert. Die Funktion muss einen einzelnen Float als Argument akzeptieren.
- Gibt zurück:
- int
Verbindungs-ID (die verwendet werden kann, um func zu trennen).
- class matplotlib.widgets.SliderBase(ax, orientation, closedmin, closedmax, valmin, valmax, valfmt, dragging, valstep)[Quelle]#
Basisklassen:
AxesWidgetDie Basisklasse für die Konstruktion von Slider-Widgets. Nicht für den direkten Gebrauch bestimmt.
Damit der Schieberegler reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten.
- class matplotlib.widgets.SpanSelector(ax, onselect, direction, *, minspan=0, useblit=False, props=None, onmove_callback=None, interactive=False, button=None, handle_props=None, grab_range=10, state_modifier_keys=None, drag_from_anywhere=False, ignore_event_outside=False, snap_values=None)[Quelle]#
Basisklassen:
_SelectorWidgetWählt visuell einen Min/Max-Bereich auf einer einzelnen Achse aus und ruft mit diesen Werten eine Funktion auf.
Um sicherzustellen, dass der Selektor reaktionsfähig bleibt, behalten Sie eine Referenz darauf.
Um den SpanSelector auszuschalten, setzen Sie
span_selector.activeauf False. Um ihn wieder einzuschalten, setzen Sie ihn auf True.Ereignisse wie Klicken und Loslassen, die an denselben Koordinaten außerhalb der Auswahl ausgelöst werden, löschen den Selektor, es sei denn,
ignore_event_outside=True.- Parameter:
- ax
Axes - onselectaufrufbar mit Signatur
func(min: float, max: float) Eine Callback-Funktion, die nach einem Loslass-Ereignis aufgerufen wird, wenn die Auswahl erstellt, geändert oder entfernt wird.
- direction{"horizontal", "vertical"}
Die Richtung, entlang der der Span-Selektor gezeichnet wird.
- minspanfloat, Standard: 0
Wenn die Auswahl kleiner oder gleich minspan ist, wird die Auswahl entfernt (wenn bereits vorhanden) oder abgebrochen.
- useblitbool, Standard: False
Wenn True, werden die Backend-abhängigen Blitting-Funktionen für schnellere Canvas-Updates verwendet. Einzelheiten finden Sie im Tutorial Schnelleres Rendern durch Blitting.
- propsdict, Standard: {'facecolor': 'red', 'alpha': 0.5}
Dictionary mit
Patch-Eigenschaften.- onmove_callbackaufrufbar mit Signatur
func(min: float, max: float), optional Wird bei Mausbewegung aufgerufen, während die Spanne ausgewählt wird.
- interactivebool, Standard: False
Ob eine Reihe von Handles gezeichnet werden soll, die die Interaktion mit dem Widget nach dem Zeichnen ermöglichen.
- button
MouseButtonoder Liste vonMouseButton, Standard: alle Tasten Die Maustasten, die den Span-Selektor aktivieren.
- handle_propsdict, Standard: None
Eigenschaften der Handle-Linien am Rand der Spanne. Nur verwendet, wenn interactive True ist. Siehe
Line2Dfür gültige Eigenschaften.- grab_rangefloat, Standard: 10
Abstand in Pixeln, innerhalb dessen die interaktiven Tool-Handles aktiviert werden können.
- state_modifier_keysdict, optional
Tastenkombinationen, die das Verhalten des Widgets beeinflussen. Werte ergänzen die Standardwerte, welche sind
"clear": Löscht die aktuelle Form, Standard: "escape".
- drag_from_anywherebool, Standard: False
Wenn
True, kann das Widget durch Klicken irgendwo innerhalb seiner Grenzen verschoben werden.- ignore_event_outsidebool, Standard: False
Wenn
True, wird das außerhalb des Span-Selektors ausgelöste Ereignis ignoriert.- snap_values1D array-ähnlich, optional
Die Kanten des Selektors an die angegebenen Werte anpassen.
- ax
Beispiele
>>> import matplotlib.pyplot as plt >>> import matplotlib.widgets as mwidgets >>> fig, ax = plt.subplots() >>> ax.plot([1, 2, 3], [10, 50, 100]) >>> def onselect(vmin, vmax): ... print(vmin, vmax) >>> span = mwidgets.SpanSelector(ax, onselect, 'horizontal', ... props=dict(facecolor='blue', alpha=0.5)) >>> fig.show()
Siehe auch: Span Selector
- property direction#
Richtung des Span-Selektors: 'vertical' oder 'horizontal'.
- property extents#
- (float, float)
Die Werte, in Datenkoordinaten, für den Start- und Endpunkt der aktuellen Auswahl. Wenn keine Auswahl vorhanden ist, sind der Start- und Endwert gleich.
- class matplotlib.widgets.SubplotTool(targetfig, toolfig)[Quelle]#
Basisklassen:
WidgetEin Werkzeug zur Anpassung der Subplot-Parameter einer
Figure.
- class matplotlib.widgets.TextBox(ax, label, initial='', *, color='.95', hovercolor='1', label_pad=0.01, textalignment='left')[Quelle]#
Basisklassen:
AxesWidgetEine GUI-neutrale Texteingabebox.
Damit die Textbox reaktionsfähig bleibt, müssen Sie eine Referenz darauf behalten.
Rufen Sie
on_text_changeauf, um bei jeder Textänderung benachrichtigt zu werden.Rufen Sie
on_submitauf, um bei jedem Drücken von Enter oder Verlassen des Eingabefeldes benachrichtigt zu werden.- Attribute:
- Parameter:
- ax
Axes Die
Axes-Instanz, in die der Button platziert wird.- labelstr
Beschriftung für diese Textbox.
- initialstr
Anfangswert in der Textbox.
- colorFarbe
Die Farbe der Box.
- hovercolorFarbe
Die Farbe der Box, wenn die Maus darüber ist.
- label_padfloat
Der Abstand zwischen der Beschriftung und der rechten Seite der Textbox.
- textalignment{'left', 'center', 'right'}
Die horizontale Position des Textes.
- ax
- on_submit(func)[Quelle]#
Wenn der Benutzer Enter drückt oder das Eingabefeld verlässt, wird diese func mit dem Ereignis aufgerufen.
Eine Verbindungs-ID wird zurückgegeben, die zum Trennen verwendet werden kann.
- on_text_change(func)[Quelle]#
Wenn sich der Text ändert, wird diese func mit dem Ereignis aufgerufen.
Eine Verbindungs-ID wird zurückgegeben, die zum Trennen verwendet werden kann.
- property text#
- class matplotlib.widgets.ToolHandles(ax, x, y, *, marker='o', marker_props=None, useblit=True)[Quelle]#
Bases:
objectSteuert Handles für Canvas-Werkzeuge.
- Parameter:
- ax
Axes Matplotlib-Achsenobjekte, auf denen Werkzeug-Handles angezeigt werden.
- x, y1D-Arrays
Koordinaten der Steuerung-Handles.
- markerstr, Standard: 'o'
Form des Markers, der zur Anzeige des Handles verwendet wird. Siehe
plot.- marker_propsdict, optional
Zusätzliche Marker-Eigenschaften. Siehe
Line2D.- useblitbool, Standard: True
Ob Blitting für schnelleres Zeichnen verwendet werden soll (falls vom Backend unterstützt). Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- ax
- property artists#
- property x#
- property y#
- class matplotlib.widgets.ToolLineHandles(ax, positions, direction, *, line_props=None, useblit=True)[Quelle]#
Bases:
objectSteuert Handles für Canvas-Werkzeuge.
- Parameter:
- ax
Axes Matplotlib-Achsenobjekte, auf denen Werkzeug-Handles angezeigt werden.
- positions1D-Array
Positionen der Handles in Datenkoordinaten.
- direction{"horizontal", "vertical"}
Richtung der Handles, entweder 'vertical' oder 'horizontal'
- line_propsdict, optional
Zusätzliche Linien-Eigenschaften. Siehe
Line2D.- useblitbool, Standard: True
Ob Blitting für schnelleres Zeichnen verwendet werden soll (falls vom Backend unterstützt). Sehen Sie das Tutorial Schnellere Darstellung durch Blitting für Details.
- ax
- property artists#
- closest(x, y)[Quelle]#
Gibt Index und Pixelabstand zum nächsten Handle zurück.
- Parameter:
- x, yfloat
x, y-Position, von der aus der Abstand berechnet wird, um das nächste Handle zu bestimmen.
- Gibt zurück:
- index, distanceIndex des Handles und dessen Abstand von
Position x, y
- property direction#
Richtung des Handles: 'vertical' oder 'horizontal'.
- property positions#
Positionen des Handles in Datenkoordinaten.
- class matplotlib.widgets.Widget[Quelle]#
Bases:
objectAbstrakte Basisklasse für GUI-neutrale Widgets.
- property active#
Ist das Widget aktiv?
- drawon = True#
- eventson = True#