matplotlib.backend_bases
#
Abstrakte Basisklassen definieren die Grundelemente, die Renderer und Grafikkontexte implementieren müssen, um als Matplotlib-Backend zu dienen.
RendererBase
Eine abstrakte Basisklasse zur Handhabung von Zeichen-/Rendering-Vorgängen.
FigureCanvasBase
Die Abstraktionsschicht, die die
Figure
vom Backend spezifischen Details wie einen Zeichenbereich der Benutzeroberfläche trennt.GraphicsContextBase
Eine abstrakte Basisklasse, die Farbe, Linienstile usw. bereitstellt.
Event
Die Basisklasse für die gesamte Matplotlib-Ereignisbehandlung. Abgeleitete Klassen wie
KeyEvent
undMouseEvent
speichern die Metadaten wie gedrückte Tasten und Schaltflächen, x- und y-Positionen in Pixel undAxes
Koordinaten.ShowBase
Die Basisklasse für die
Show
Klasse jedes interaktiven Backends; das Callable 'show' wird dann auf gesetztShow.__call__
.ToolContainerBase
Die Basisklasse für die Toolbar-Klasse jedes interaktiven Backends.
- Klasse matplotlib.backend_bases. CloseEvent ( name , canvas , guiEvent = None ) [Quelle] #
Basen:
Event
Ein Ereignis, das durch das Schließen einer Figur ausgelöst wird.
- Klasse matplotlib.backend_bases. DrawEvent ( name , canvas , renderer ) [Quelle] #
Basen:
Event
Ein Ereignis, das durch einen Zeichenvorgang auf der Leinwand ausgelöst wird.
In den meisten Backends werden Callbacks, die dieses Ereignis abonniert haben, ausgelöst, nachdem das Rendern abgeschlossen ist, aber bevor der Bildschirm aktualisiert wird. Alle zusätzlichen Künstler, die zum Renderer der Leinwand gezogen werden, werden ohne expliziten Aufruf von wiedergegeben
blit
.Warnung
Das Aufrufen
canvas.draw
undcanvas.blit
in diesen Rückrufen ist möglicherweise nicht bei allen Backends sicher und kann eine unendliche Rekursion verursachen.Ein DrawEvent verfügt zusätzlich zu den von der übergeordneten
Event
Klasse definierten Attributen über eine Reihe spezieller Attribute.- Attribute :
- Renderer
RendererBase
Der Renderer für das Draw-Ereignis.
- Renderer
- Klasse matplotlib.backend_bases. Ereignis ( name , canvas , guiEvent = None ) [Quelle] #
Basen:
object
Ein Matplotlib-Ereignis.
Die folgenden Attribute werden definiert und mit ihren Standardwerten angezeigt. Unterklassen können zusätzliche Attribute definieren.
- Attribute :
- Namensstr _
Der Ereignisname.
- Leinwand
FigureCanvasBase
Die Back-End-spezifische Canvas-Instanz, die das Ereignis generiert.
- guiEvent
Das GUI-Ereignis, das das Matplotlib-Ereignis ausgelöst hat.
- Klasse matplotlib.backend_bases. FigureCanvasBase ( figure = None ) [Quelle] #
Basen:
object
Die Leinwand, in die die Figur gerendert wird.
- Attribute :
- Zahl
matplotlib.figure.Figure
Eine High-Level-Figureninstanz.
- Zahl
- Eigenschaft button_pick_id #
- button_press_event ( x , y , button , dblclick = False , guiEvent = None ) [Quelle] #
[ Veraltet ] Callback-Verarbeitung für Maustastendruck-Ereignisse.
Vom Backend abgeleitete Klassen sollten diese Funktion bei jedem Mausklick aufrufen. ( x , y ) sind die Leinwandkoordinaten ((0, 0) ist unten links). Schaltfläche und Taste sind wie in definiert
MouseEvent
.Diese Methode ruft alle Funktionen auf, die mit 'button_press_event' mit einer
MouseEvent
Instanz verbunden sind.Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('button_press_event', MouseEvent(...)).
- button_release_event ( x , y , button , guiEvent = None ) [Quelle] #
[ Veraltet ] Callback-Verarbeitung für Ereignisse beim Loslassen der Maustaste.
Vom Backend abgeleitete Klassen sollten diese Funktion bei jedem Loslassen der Maustaste aufrufen.
Diese Methode ruft alle Funktionen auf, die mit 'button_release_event' mit einer
MouseEvent
Instanz verbunden sind.- Parameter :
- x schweben
Die Canvas-Koordinaten, wobei 0 = links ist.
- y schweben
Die Leinwandkoordinaten, wobei 0 = unten ist.
- guiEvent
Das native UI-Ereignis, das das Matplotlib-Ereignis generiert hat.
Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('button_release_event', MouseEvent(...)).
- Property -Callbacks #
- close_event ( guiEvent = None ) [Quelle] #
[ Veraltet ] Übergeben Sie a
CloseEvent
an alle Funktionen, die mit verbunden sindclose_event
.Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('close_event', CloseEvent(...)).
- Eigenschaft device_pixel_ratio #
Das Verhältnis von physischen zu logischen Pixeln, die für die Leinwand auf dem Bildschirm verwendet werden.
Standardmäßig ist dies 1, was bedeutet, dass physische und logische Pixel dieselbe Größe haben. Unterklassen, die High-DPI-Bildschirme unterstützen, können diese Eigenschaft festlegen, um anzuzeigen, dass das Verhältnis anders ist. Die gesamte Matplotlib-Interaktion bleibt in logischen Pixeln, es sei denn, Sie arbeiten direkt mit der Leinwand.
- draw ( * args , ** kwargs ) [Quelle] #
Rendern Sie die
Figure
.Diese Methode muss den Künstlerbaum durchlaufen, auch wenn keine Ausgabe erzeugt wird, da sie verzögerte Arbeit auslöst, auf die Benutzer möglicherweise zugreifen möchten, bevor sie die Ausgabe auf der Festplatte speichern. Zum Beispiel das Berechnen von Limits, Auto-Limits und Tick-Werten.
- draw_event ( Renderer ) [Quelle] #
[ Veraltet ] Übergeben Sie a
DrawEvent
an alle Funktionen, die mit verbunden sinddraw_event
.Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('draw_event', DrawEvent(...)).
- draw_idle ( * args , ** kwargs ) [Quelle] #
Fordern Sie eine Widget-Neuzeichnung an, sobald die Steuerung zur GUI-Ereignisschleife zurückkehrt.
Selbst wenn mehrere Aufrufe
draw_idle
auftreten, bevor die Steuerung zur GUI-Ereignisschleife zurückkehrt, wird die Figur nur einmal gerendert.Anmerkungen
Back-Ends können die Methode überschreiben und ihre eigene Strategie implementieren, um mehrere Renderings zu verhindern.
- enter_notify_event ( guiEvent = None , xy = None ) [Quelle] #
[ Veraltet ] Callback-Verarbeitung für den Mauszeiger, der in die Zeichenfläche eintritt.
Vom Backend abgeleitete Klassen sollten diese Funktion beim Aufrufen von Canvas aufrufen.
- Parameter :
- guiEvent
Das native UI-Ereignis, das das Matplotlib-Ereignis generiert hat.
- xy (schweben, schweben)
Die Koordinatenposition des Mauszeigers beim Betreten des Zeichenbereichs.
Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('enter_notify_event', LocationEvent(...)).
- events = ['resize_event', 'draw_event', 'key_press_event', 'key_release_event', 'button_press_event', 'button_release_event', 'scroll_event', 'motion_notify_event', 'pick_event', 'figure_enter_event', 'figure_leave_event', 'axes_enter_event' , 'axes_leave_event', 'close_event'] #
- filetypes = {'eps': 'Encapsulated Postscript', 'jpeg': 'Joint Photographic Experts Group', 'jpg': 'Joint Photographic Experts Group', 'pdf': 'Portable Document Format', 'pgf': 'PGF code for LaTeX', 'png': 'Portable Network Graphics', 'ps': 'Postscript', 'raw': 'Raw RGBA bitmap', 'rgba': 'Raw RGBA bitmap','svg': 'Skalierbare Vektorgrafiken ', 'svgz': 'Skalierbare Vektorgrafiken ', 'tif': 'Tagged Image File Format', 'tiff': 'Tagged Image File Format', 'webp': 'WebP Image Format'} #
- fixed_dpi = Keine #
- flush_events ( ) [Quelle] #
Leeren Sie die GUI-Ereignisse für die Figur.
Interaktive Back-Ends müssen diese Methode neu implementieren.
- get_default_filename ( ) [Quelle] #
Gibt eine Zeichenfolge zurück, die eine Erweiterung enthält, die zur Verwendung als Standarddateiname geeignet ist.
- Klassenmethode get_default_filetype ( ) [Quelle] #
Gibt das standardmäßige savefig-Dateiformat wie in
rcParams["savefig.format"]
(Standard:'png'
) angegeben zurück.Die zurückgegebene Zeichenfolge enthält keinen Punkt. Diese Methode wird in Backends überschrieben, die nur einen einzigen Dateityp unterstützen.
- Klassenmethode get_supported_filetypes ( ) [Quelle] #
Gibt Diktat von savefig-Dateiformaten zurück, die von diesem Backend unterstützt werden.
- Klassenmethode get_supported_filetypes_grouped ( ) [Quelle] #
Gibt ein Diktat von savefig-Dateiformaten zurück, die von diesem Backend unterstützt werden, wobei die Schlüssel ein Dateitypname sind, z. B. "Joint Photographic Experts Group", und die Werte eine Liste von Dateinamenerweiterungen sind, die für diesen Dateityp verwendet werden, z. B. ['jpg' , 'jpeg'].
- get_width_height ( * , physical = False ) [Quelle] #
Gibt die Breite und Höhe der Figur in ganzzahligen Punkten oder Pixeln zurück.
Wenn die Zahl auf High-DPI-Bildschirmen verwendet wird (und das Backend dies unterstützt), erfolgt die Kürzung auf ganze Zahlen nach der Skalierung durch das Pixelverhältnis des Geräts.
- Parameter :
- Physical Bool, Standard: False
Ob echte physische Pixel oder logische Pixel zurückgegeben werden sollen. Physische Pixel können von Backends verwendet werden, die HiDPI unterstützen, aber dennoch die Leinwand mit ihrer tatsächlichen Größe konfigurieren.
- Rückgaben :
- Breite, Höhe int
Die Größe der Abbildung in Punkten oder Pixeln, je nach Backend.
- grab_mouse ( ax ) [Quelle] #
Legen Sie das Kind
Axes
fest, das die Mausereignisse erfasst.Wird normalerweise von den Widgets selbst aufgerufen. Es ist ein Fehler, dies aufzurufen, wenn die Maus bereits von einer anderen Axe gegriffen wird.
- inaxes ( xy ) [Quelle] #
Gibt das oberste Sichtbare zurück
Axes
, das den Punkt xy enthält .- Parameter :
- xy (schweben, schweben)
(x, y) Pixelpositionen von links/unten auf der Leinwand.
- Rückgaben :
Axes
oder KeineDie obersten sichtbaren Achsen, die den Punkt enthalten, oder Keine, wenn sich am Punkt keine Achsen befinden.
- is_saving ( ) [Quelle] #
Geben Sie zurück, ob der Renderer dabei ist, in eine Datei zu speichern, anstatt für einen Puffer auf dem Bildschirm zu rendern.
- key_press_event ( key , guiEvent = None ) [Quelle] #
[ Veraltet ] Übergeben Sie a
KeyEvent
an alle Funktionen, die mit verbunden sindkey_press_event
.Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('key_press_event', KeyEvent(...)).
- key_release_event ( key , guiEvent = None ) [Quelle] #
[ Veraltet ] Übergeben Sie a
KeyEvent
an alle Funktionen, die mit verbunden sindkey_release_event
.Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('key_release_event', KeyEvent(...)).
- leave_notify_event ( guiEvent = None ) [Quelle] #
[ Veraltet ] Callback-Verarbeitung für den Mauszeiger, der die Leinwand verlässt.
Vom Backend abgeleitete Klassen sollten diese Funktion aufrufen, wenn sie die Leinwand verlassen.
- Parameter :
- guiEvent
Das native UI-Ereignis, das das Matplotlib-Ereignis generiert hat.
Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('leave_notify_event', LocationEvent(...)).
- manager_class [Quelle] #
Pseudonym von
FigureManagerBase
- motion_notify_event ( x , y , guiEvent = None ) [Quelle] #
[ Veraltet ] Callback-Verarbeitung für Mausbewegungsereignisse.
Vom Backend abgeleitete Klassen sollten diese Funktion bei jedem Bewegungsbenachrichtigungsereignis aufrufen.
Diese Methode ruft alle Funktionen auf, die mit 'motion_notify_event' mit einer
MouseEvent
Instanz verbunden sind.- Parameter :
- x schweben
Die Canvas-Koordinaten, wobei 0 = links ist.
- y schweben
Die Leinwandkoordinaten, wobei 0 = unten ist.
- guiEvent
Das native UI-Ereignis, das das Matplotlib-Ereignis generiert hat.
Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('motion_notify_event', MouseEvent(...)).
- mpl_connect ( s , func ) [Quelle] #
Binden Sie die Funktion func an das Ereignis s .
- Parameter :
- s -str
Eine der folgenden Ereignis-IDs:
'button_press_event'
'button_release_event'
'draw_event'
'key_press_event'
'key_release_event'
'motion_notify_event'
'pick_event'
'resize_event'
'scroll_event'
'figure_enter_event',
'figure_leave_event',
'axes_enter_event',
'axes_leave_event'
'close_event'.
- Funktion aufrufbar
Die auszuführende Callback-Funktion, die die Signatur haben muss:
def func(event: Event) -> Any
Für die Standortereignisse (Tasten- und Tastendruck/-loslassen) wird, wenn sich die Maus über den Achsen befindet, das
inaxes
Attribut des Ereignisses auf dasAxes
Ende des Ereignisses gesetzt, und zusätzlich werden die Variablenxdata
undydata
Attribute auf die Maus gesetzt Standort in Datenkoordinaten. SieheKeyEvent
undMouseEvent
für weitere Informationen.
- Rückgaben :
- Säure
Eine Verbindungs-ID, die mit verwendet werden kann
FigureCanvasBase.mpl_disconnect
.
Beispiele
def on_press(event): print('you pressed', event.button, event.xdata, event.ydata) cid = canvas.mpl_connect('button_press_event', on_press)
- mpl_disconnect ( cid ) [Quelle] #
Trennen Sie den Rückruf mit id cid .
Beispiele
cid = canvas.mpl_connect('button_press_event', on_press) # ... later canvas.mpl_disconnect(cid)
- Klassenmethode new_manager ( figure , num ) [Quelle] #
Erstellen Sie mithilfe dieser Canvas-Klasse einen neuen Figure-Manager für figure .
Anmerkungen
Diese Methode sollte nicht in Unterklassen neu implementiert werden. Wenn eine benutzerdefinierte Manager-Erstellungslogik erforderlich ist, implementieren Sie bitte erneut
FigureManager.create_with_canvas
.
- new_timer ( Intervall = None , Rückrufe = None ) [Quelle] #
Erstellen Sie eine neue Back-End-spezifische Unterklasse von
Timer
.Dies ist nützlich, um periodische Ereignisse über die native Ereignisschleife des Backends abzurufen. Nur für Backends mit GUIs implementiert.
- Parameter :
- Intervall int
Zeitintervall in Millisekunden.
- Rückrufliste [tuple[callable, tuple, dict]]
Sequenz von (func, args, kwargs), wobei der Timer jedes Intervall ausführt .
func(*args, **kwargs)
Rückrufe, die zurückkehren
False
oder0
aus dem Timer entfernt werden.
Beispiele
>>> timer = fig.canvas.new_timer(callbacks=[(f1, (1,), {'a': 3})])
- pick ( mouseevent ) [Quelle] #
[ Veraltet ]
Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen canvas.figure.pick.
- pick_event ( mouseevent , artist , ** kwargs ) [Quelle] #
[ Veraltet ] Callback-Verarbeitung für Auswahlereignisse.
Diese Methode wird von Künstlern aufgerufen, die ausgewählt wurden, und löst
PickEvent
Rückrufe von registrierten Zuhörern aus.Beachten Sie, dass Künstler standardmäßig nicht auswählbar sind (siehe
Artist.set_picker
).Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('pick_event', PickEvent(...)).
- print_figure ( filename , dpi = None , facecolor = None , edgecolor = None , direction = 'portrait' , format = None , * , bbox_inches = None , pad_inches = None , bbox_extra_artists = None , backend = None , ** kwargs ) [source ] #
Rendern Sie die Abbildung auf Hardcopy. Legen Sie die Flächen- und Kantenfarben des Figur-Patches fest. Dies ist nützlich, da einige der GUIs einen grauen Hintergrund in Form von Ziffern haben und Sie dies wahrscheinlich auf Papier überschreiben möchten.
- Parameter :
- filename str oder pfadartig oder dateiartig
Die Datei, in der die Figur gespeichert wird.
- dpi Float, Standard:
rcParams["savefig.dpi"]
(Standard:'figure'
) Die Punkte pro Zoll, in denen die Figur gespeichert werden soll.
- facecolor color oder 'auto', default:
rcParams["savefig.facecolor"]
(default:'auto'
) Die Gesichtsfarbe der Figur. Bei 'auto' wird die aktuelle Gesichtsfarbe der Figur verwendet.
- edgecolor color oder 'auto', default:
rcParams["savefig.edgecolor"]
(default:'auto'
) Die Kantenfarbe der Figur. Bei 'auto' wird die aktuelle Kantenfarbe der Figur verwendet.
- Ausrichtung {'Querformat', 'Hochformat'}, Standard: 'Hochformat'
Gilt derzeit nur für PostScript-Druck.
- formatieren , optional
Erzwingen Sie ein bestimmtes Dateiformat. Wenn nicht angegeben, wird das Format von der Dateinamenerweiterung abgeleitet , und wenn dies fehlschlägt, von
rcParams["savefig.format"]
(Standard:'png'
).- bbox_inches 'tight' oder
Bbox
, default:rcParams["savefig.bbox"]
(default:None
) Begrenzungsrahmen in Zoll: Nur der angegebene Teil der Figur wird gespeichert. Wenn es „eng“ ist, versuchen Sie, die enge Box der Figur herauszufinden.
- pad_inches Float, Standard:
rcParams["savefig.pad_inches"]
(Standard:0.1
) Umfang der Polsterung um die Figur herum, wenn bbox_inches 'eng' ist.
- bbox_extra_artists Liste von
Artist
, optional Eine Liste mit zusätzlichen Künstlern, die bei der Berechnung der knappen Box berücksichtigt werden.
- Backend -Str, optional
Verwenden Sie zum Rendern der Datei ein nicht standardmäßiges Backend, z. B. zum Rendern einer PNG-Datei mit dem „cairo“-Backend anstelle des standardmäßigen „agg“ oder einer PDF-Datei mit dem „pgf“-Backend anstelle des standardmäßigen „pdf“. Beachten Sie, dass das Standard-Backend normalerweise ausreichend ist. Eine Liste gültiger Backends für jedes Dateiformat finden Sie unter Die integrierten Backends . Auf benutzerdefinierte Backends kann als "module://..." verwiesen werden.
- release_mouse ( ax ) [Quelle] #
Lassen Sie den von der Axt gehaltenen Mausgriff los .
Axes
Wird normalerweise von den Widgets aufgerufen. Es ist in Ordnung, dies aufzurufen, auch wenn ax derzeit nicht über den Mausgriff verfügt.
- required_interactive_framework = Keine #
- Größe ändern ( w , h ) [Quelle] #
NICHT VERWENDET: Stellen Sie die Leinwandgröße in Pixel ein.
Bestimmte Backends können eine ähnliche Methode intern implementieren, aber dies ist keine Voraussetzung für Matplotlib selbst und wird auch nicht von Matplotlib selbst verwendet.
- resize_event ( ) [Quelle] #
[ Veraltet ] Übergeben Sie a
ResizeEvent
an alle Funktionen, die mit verbunden sindresize_event
.Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('resize_event', ResizeEvent(...)).
- scroll_event ( x , y , step , guiEvent = None ) [Quelle] #
[ Veraltet ] Callback-Verarbeitung für Scroll-Ereignisse.
Vom Backend abgeleitete Klassen sollten diese Funktion bei jedem Scrollrad-Ereignis aufrufen. ( x , y ) sind die Leinwandkoordinaten ((0, 0) ist unten links). Schaltfläche und Taste sind wie in definiert
MouseEvent
.MouseEvent
Diese Methode ruft alle Funktionen auf, die über eine Instanz mit dem 'scroll_event' verbunden sind .Anmerkungen
Veraltet seit Version 3.6: Verwenden Sie stattdessen callbacks.process('scroll_event', MouseEvent(...)).
- Eigenschaft scroll_pick_id #
- set_cursor ( Cursor ) [Quelle] #
Setzen Sie den aktuellen Cursor.
Dies hat möglicherweise keine Auswirkungen, wenn das Backend nichts anzeigt.
Falls vom Backend gefordert, sollte diese Methode nach dem Setzen des Cursors eine Aktualisierung in der Backend-Ereignisschleife auslösen, da diese Methode zB vor einer lang andauernden Aufgabe aufgerufen werden kann, während der die GUI nicht aktualisiert wird.
- Parameter :
- Mauszeiger
Cursors
Der Cursor, der über der Leinwand angezeigt werden soll. Hinweis: Einige Backends können den Cursor für das gesamte Fenster ändern.
- Mauszeiger
- start_event_loop ( timeout = 0 ) [Quelle] #
Starten Sie eine blockierende Ereignisschleife.
Eine solche Ereignisschleife wird von interaktiven Funktionen wie
ginput
und verwendetwaitforbuttonpress
, um auf Ereignisse zu warten.Die Ereignisschleife blockiert, bis eine Callback-Funktion auslöst
stop_event_loop
oder ein Timeout erreicht wird.Wenn timeout 0 oder negativ ist, niemals timeout.
Nur interaktive Backends müssen diese Methode neu implementieren, und sie ist auf
flush_events
eine ordnungsgemäße Implementierung angewiesen.Interaktive Backends sollten dies nativer implementieren.
- stop_event_loop ( ) [Quelle] #
Beenden Sie die aktuelle Blockierungsereignisschleife.
Interaktive Backends müssen dies entsprechend neu implementieren
start_event_loop
- supports_blit = Falsch #
- switch_backends ( FigureCanvasClass ) [Quelle] #
Instanziieren Sie eine Instanz von FigureCanvasClass
Dies wird für die Backend-Umschaltung verwendet, zB um ein FigureCanvasPS aus einem FigureCanvasGTK zu instanziieren. Beachten Sie, dass kein tiefes Kopieren durchgeführt wird, sodass alle Änderungen an einer der Instanzen (z. B. das Festlegen von Figurengröße oder Linienrequisiten) in der anderen widergespiegelt werden
- Klasse matplotlib.backend_bases. FigureManagerBase ( canvas , num ) [Quelle] #
Basen:
object
Eine vom Backend unabhängige Abstraktion eines Figurencontainers und Controllers.
Der Figurenmanager wird von pyplot verwendet, um Backend-unabhängig mit dem Fenster zu interagieren. Es ist ein Adapter für das reale (GUI-)Framework, das die visuelle Figur auf dem Bildschirm darstellt.
GUI-Backends definieren aus dieser Klasse, um allgemeine Operationen wie Anzeigen oder Größenänderung in den GUI-spezifischen Code zu übersetzen. Nicht-GUI-Backends unterstützen diese Operationen nicht und können nur die Basisklasse verwenden.
Auf die folgenden grundlegenden Operationen kann zugegriffen werden:
Fensteroperationen
Handhabung von Tasten- und Maustastendrücken
Der Figurenmanager richtet die standardmäßige Handhabung von Tasten- und Maustastendrücken ein, indem er das
key_press_handler
an das Matplotlib-Ereignissystem anschließt. Dadurch werden die gleichen Tastenkombinationen und Mausaktionen in allen Backends sichergestellt.Andere Operationen
Unterklassen haben zusätzliche Attribute und Funktionen, um auf zusätzliche Funktionalität zuzugreifen. Dies ist natürlich Backend-spezifisch. Beispielsweise verfügen die meisten GUI-Backends über
window
und -toolbar
Attribute, die den Zugriff auf die nativen GUI-Widgets des jeweiligen Frameworks ermöglichen.- Attribute :
- Leinwand
FigureCanvasBase
Die Back-End-spezifische Canvas-Instanz.
- num int oder str
Die Figurennummer.
- key_press_handler_id int
Die standardmäßige Key-Handler-CID, wenn der Toolmanager verwendet wird. Um die standardmäßige Behandlung von Tastendrücken zu deaktivieren, verwenden Sie:
figure.canvas.mpl_disconnect( figure.canvas.manager.key_press_handler_id)
- button_press_handler_id int
Die standardmäßige Maustasten-Handler-Cid, wenn der Toolmanager verwendet wird. Um die standardmäßige Tastendruckbehandlung zu deaktivieren, verwenden Sie:
figure.canvas.mpl_disconnect( figure.canvas.manager.button_press_handler_id)
- Leinwand
- Klassenmethode create_with_canvas ( canvas_class , figure , num ) [Quelle] #
Erstellen Sie einen Manager für eine bestimmte Figur mit einer bestimmten canvas_class .
Back-Ends sollten diese Methode überschreiben, wenn sie spezielle Anforderungen für die Einrichtung des Zeichenbereichs oder des Managers haben.
- get_window_title ( ) [Quelle] #
Gibt den Titeltext des Fensters zurück, das die Abbildung enthält, oder None, wenn kein Fenster vorhanden ist (z. B. ein PS-Backend).
- Größe ändern ( w , h ) [Quelle] #
Ändern Sie für GUI-Backends die Größe des Fensters (in physischen Pixeln).
- set_window_title ( Titel ) [Quelle] #
Legen Sie den Titeltext des Fensters fest, das die Abbildung enthält.
Dies hat keine Auswirkungen auf Nicht-GUI-Backends (z. B. PS).
- zeige ( ) [Quelle] #
Zeigen Sie für GUI-Backends das Figurenfenster und zeichnen Sie es neu. Lösen Sie für Nicht-GUI-Backends eine Ausnahme aus, es sei denn, Sie laufen kopflos (dh unter Linux mit einem nicht gesetzten DISPLAY); diese Ausnahme wird in eine Warnung umgewandelt
Figure.show
.
- Klasse matplotlib.backend_bases. GraphicsContextBase [Quelle] #
Basen:
object
Eine abstrakte Basisklasse, die Farbe, Linienstile usw. bereitstellt.
- get_alpha ( ) [Quelle] #
Gibt den für das Blending verwendeten Alpha-Wert zurück – wird nicht von allen Backends unterstützt.
- get_antialiased ( ) [Quelle] #
Gibt zurück, ob das Objekt versuchen soll, ein Antialiasing-Rendering durchzuführen.
- get_clip_path ( ) [Quelle] #
Gibt den Clip-Pfad in der Form (path, transform) zurück, wobei path eine
Path
Instanz und transform eine affine Transformation ist, die vor dem Clipping auf den Pfad angewendet wird.
- get_dashes ( ) [Quelle] #
Gibt den Strichstil als (Offset, Strichliste)-Paar zurück.
Siehe
set_dashes
für Details.Der Standardwert ist (Keine, Keine).
- get_forced_alpha ( ) [Quelle] #
Gibt zurück, ob der von get_alpha() angegebene Wert verwendet werden soll, um andere Alphakanalwerte zu überschreiben.
- get_sketch_params ( ) [Quelle] #
Geben Sie die Skizzenparameter für den Künstler zurück.
- Rückgaben :
- Tupel bzw
None
Ein 3-Tupel mit den folgenden Elementen:
scale
: Die Amplitude des Wackelns senkrecht zur Quelllinie.length
: Die Länge des Wackelns entlang der Linie.randomness
: Der Skalierungsfaktor, um den die Länge geschrumpft oder erweitert wird.
Kann zurückkehren,
None
wenn keine Skizzenparameter festgelegt wurden.
- Tupel bzw
- get_snap ( ) [Quelle] #
Gibt die Snap-Einstellung zurück, die sein kann:
True: Scheitelpunkte am nächsten Pixelmittelpunkt ausrichten
Falsch: Scheitelpunkte unverändert lassen
Keine: (automatisch) Wenn der Pfad nur geradlinige Liniensegmente enthält, wird auf den nächsten Pixelmittelpunkt gerundet
- Wiederherstellung ( ) [Quelle] #
Stellen Sie den Grafikkontext aus dem Stack wieder her – nur für Backends erforderlich, die Grafikkontexte auf einem Stack speichern.
- set_alpha ( alpha ) [Quelle] #
Legen Sie den für das Blending verwendeten Alphawert fest - wird nicht von allen Backends unterstützt.
Wenn
alpha=None
(Standardeinstellung) werden die Alpha-Komponenten der Vordergrund- und Füllfarben verwendet, um ihre jeweiligen Transparenzen festzulegen (wo zutreffend); andernfallsalpha
werden sie überschrieben.
- set_antialiased ( b ) [Quelle] #
Legen Sie fest, ob das Objekt mit geglättetem Rendering gezeichnet werden soll.
- set_capstyle ( cs ) [Quelle] #
Legen Sie fest, wie Endpunkte von Linien gezeichnet werden.
- Parameter :
- cs
CapStyle
oder {'butt', 'projecting', 'round'}
- cs
- set_clip_path ( Pfad ) [Quelle] #
Stellen Sie den Clip-Pfad auf a
TransformedPath
oder None ein.
- set_dashes ( dash_offset , dash_list ) [Quelle] #
Legen Sie den Strichstil für den gc fest.
- Parameter :
- dash_offset Float
Entfernung in Punkten in das Strichmuster, bei der das Muster beginnen soll. Es wird normalerweise auf 0 gesetzt.
- dash_list -Array-ähnlich oder None
Die Ein-Aus-Sequenz als Punkte. Keine gibt eine durchgezogene Linie an. Alle Werte müssen ansonsten nicht negativ sein (\(\ge 0\)).
Anmerkungen
Siehe S. 666 der PostScript Language Reference für weitere Informationen.
- set_foreground ( fg , isRGBA = False ) [Quelle] #
Legen Sie die Vordergrundfarbe fest.
- Parameter :
- fg Farbe
- isRGBA bool
Wenn fg bekanntermaßen ein Tupel ist, kann isRGBA auf True gesetzt werden, um die Leistung zu verbessern.
(r, g, b, a)
- set_joinstyle ( js ) [Quelle] #
Legen Sie fest, wie Verbindungen zwischen Liniensegmenten gezeichnet werden.
- Parameter :
- js
JoinStyle
oder {'miter', 'round', 'bevel'}
- js
- set_sketch_params ( scale = None , length = None , randomness = None ) [Quelle] #
Legen Sie die Skizzenparameter fest.
- Parameter :
- Waagenschwimmer , optional
Die Amplitude des Wackelns senkrecht zur Quelllinie in Pixel. Wenn der Maßstab
None
, oder nicht angegeben ist, wird kein Skizzenfilter bereitgestellt.- Länge Float, Standard: 128
Die Länge des Wackelns entlang der Linie in Pixel.
- Zufallsfloat , Standard: 16
Der Skalierungsfaktor, um den die Länge geschrumpft oder erweitert wird.
- set_snap ( snap ) [Quelle] #
Legen Sie die Fangeinstellung fest, die Folgendes sein kann:
True: Scheitelpunkte am nächsten Pixelmittelpunkt ausrichten
Falsch: Scheitelpunkte unverändert lassen
Keine: (automatisch) Wenn der Pfad nur geradlinige Liniensegmente enthält, wird auf den nächsten Pixelmittelpunkt gerundet
- Klasse matplotlib.backend_bases. KeyEvent ( name , canvas , key , x = 0 , y = 0 , guiEvent = None ) [source] #
Basen:
LocationEvent
Ein Tastenereignis (Tastendruck, Tastenloslassen).
Ein KeyEvent hat eine Reihe spezieller Attribute zusätzlich zu denen, die von den Eltern-
Event
undLocationEvent
Klassen definiert werden.Anmerkungen
Modifikatortasten werden der gedrückten Taste vorangestellt und sind in der Reihenfolge „Strg“, „Alt“, „Super“. Die Ausnahme von dieser Regel ist, wenn die gedrückte Taste selbst eine Zusatztaste ist, daher können "Strg+Alt" und "Alt+Strg" beide gültige Tastenwerte sein.
Beispiele
def on_key(event): print('you pressed', event.key, event.xdata, event.ydata) cid = fig.canvas.mpl_connect('key_press_event', on_key)
- Attribute :
- Taste Keine oder str
Die Taste(n) gedrückt. Könnte None sein , ein Unicode-Zeichen mit Berücksichtigung der Groß- und Kleinschreibung ("g", "G", "#" usw.), eine Sondertaste ("control", "shift", "f1", "up" usw.) oder eine Kombination der obigen (z. B. „Strg+Alt+G“, „Strg+Alt+G“).
- Klasse matplotlib.backend_bases. LocationEvent ( name , canvas , x , y , guiEvent = None ) [Quelle] #
Basen:
Event
Ein Ereignis, das eine Bildschirmposition hat.
Ein LocationEvent hat zusätzlich zu den von der übergeordneten
Event
Klasse definierten Attributen eine Reihe spezieller Attribute.- Attribute :
- lastevent = Keine #
- Klasse matplotlib.backend_bases. MouseEvent ( name , canvas , x , y , button = None , key = None , step = 0 , dblclick = False , guiEvent = None ) [source] #
Basen:
LocationEvent
Ein Mausereignis ('button_press_event', 'button_release_event', 'scroll_event', 'motion_notify_event').
Ein MouseEvent hat zusätzlich zu den von den Eltern-
Event
undLocationEvent
Klassen definierten Attributen eine Reihe spezieller Attribute.Beispiele
def on_press(event): print('you pressed', event.button, event.xdata, event.ydata) cid = fig.canvas.mpl_connect('button_press_event', on_press)
- Attribute :
- Taste Keine oder
MouseButton
oder {'up', 'down'} Der Knopf gedrückt. 'up' und 'down' werden für Scroll-Events verwendet.
Beachten Sie, dass LINKS und RECHTS sich tatsächlich auf die „primäre“ und „sekundäre“ Taste beziehen, dh wenn der Benutzer seine linke und rechte Taste vertauscht („Linkshändereinstellung“), dann ist die LINKE Taste die physisch rechte.
Wenn dies nicht gesetzt ist, der Name "scroll_event" ist und step ungleich Null ist, wird dies je nach Vorzeichen von step auf "up" oder "down" gesetzt .
- Taste Keine oder str
Die Taste, die gedrückt wurde, als das Mausereignis ausgelöst wurde, z. B. „Shift“. Siehe
KeyEvent
.Warnung
Dieser Schlüssel wird derzeit aus dem letzten 'key_press_event' oder 'key_release_event' bezogen, das innerhalb der Zeichenfläche aufgetreten ist. Wenn also die letzte Änderung des Tastaturzustands stattfand, während die Zeichenfläche keinen Fokus hatte, ist dieses Attribut falsch.
- Schritt Schwimmer
Die Anzahl der Scrollschritte (positiv für 'hoch', negativ für 'runter'). Dies gilt nur für 'scroll_event' und ist ansonsten standardmäßig auf 0 gesetzt.
- dblclick bool
Ob das Ereignis ein Doppelklick ist. Dies gilt nur für 'button_press_event' und ist ansonsten False. Insbesondere wird es nicht in 'button_release_event' verwendet.
- Taste Keine oder
Basen:
object
Basisklasse für den Navigationscursor, Version 2.
Backends müssen einen Canvas implementieren, der Verbindungen für „button_press_event“ und „button_release_event“ handhabt. Weitere
FigureCanvasBase.mpl_connect()
Informationen finden Sie unter.Sie müssen auch definieren
save_figure()
Speichern Sie die aktuelle Zahl
draw_rubberband()
(Optional)Ziehen Sie den Zoom auf das rechteckige "Gummiband" -Rechteck
set_message()
(Optional)Nachricht anzeigen
set_history_buttons()
(Optional)Sie können die Schaltflächen „Verlauf zurück/vorwärts“ ändern, um den deaktivierten/aktivierten Status anzuzeigen.
und überschreiben
__init__
, um die Symbolleiste einzurichten - ohne zu vergessen, die Basisklasse init aufzurufen. Normalerweise__init__
müssen Symbolleistenschaltflächen eingerichtet werden, die mit den Methodenhome
,back
,forward
,pan
,zoom
und verbundensave_figure
sind und Standardsymbole im Unterverzeichnis "images" des Datenpfads verwenden.Das war's, den Rest erledigen wir!
Bewegen Sie sich im View-Lim-Stack wieder nach oben.
Um bequem als GUI-Callback verbunden zu sein, dem oft zusätzliche Parameter übergeben werden, akzeptiert diese Methode beliebige Parameter, verwendet sie jedoch nicht.
Callback für das Ziehen im Pan/Zoom-Modus.
Rückruf für das Ziehen im Zoom-Modus.
Zeichnen Sie ein rechteckiges Gummiband, um die Zoomgrenzen anzuzeigen.
Beachten Sie, dass nicht garantiert werden kann, dass und .
x0 <= x1
y0 <= y1
Bewegen Sie sich im View Lim Stack vorwärts.
Um bequem als GUI-Callback verbunden zu sein, dem oft zusätzliche Parameter übergeben werden, akzeptiert diese Methode beliebige Parameter, verwendet sie jedoch nicht.
Stellen Sie die ursprüngliche Ansicht wieder her.
Um bequem als GUI-Callback verbunden zu sein, dem oft zusätzliche Parameter übergeben werden, akzeptiert diese Methode beliebige Parameter, verwendet sie jedoch nicht.
Schalten Sie das Schwenk-/Zoom-Werkzeug um.
Mit der linken Taste schwenken, mit der rechten zoomen.
Rückruf für das Drücken der Maustaste im Schwenk-/Zoom-Modus.
Callback für Maustastendruck im Zoom-to-Rect-Modus.
Verschieben Sie die aktuellen Ansichtsgrenzen und positionieren Sie sie auf dem Stapel.
Callback für das Loslassen der Maustaste im Pan/Zoom-Modus.
Callback für das Loslassen der Maustaste im Zoom-to-Rect-Modus.
Entfernen Sie das Gummiband.
Speichern Sie die aktuelle Figur.
[ Veraltet ] Setzt den aktuellen Cursor auf einen der
Cursors
Aufzählungswerte.Falls vom Backend gefordert, sollte diese Methode nach dem Setzen des Cursors eine Aktualisierung in der Backend-Ereignisschleife auslösen, da diese Methode zB vor einer lang andauernden Aufgabe aufgerufen werden kann, während der die GUI nicht aktualisiert wird.
Anmerkungen
Veraltet seit Version 3.5: Verwenden Sie
FigureCanvasBase.set_cursor
stattdessen.
Aktivieren oder deaktivieren Sie die Schaltfläche „Zurück/Vorwärts“.
Zeigen Sie eine Nachricht auf der Symbolleiste oder in der Statusleiste an.
Setzen Sie den Achsenstapel zurück.
- Ausnahme matplotlib.backend_bases. NonGuiException [Quelle] #
Basen:
Exception
Wird ausgelöst, wenn versucht wird, eine Figur in einem Nicht-GUI-Backend anzuzeigen.
- Klasse matplotlib.backend_bases. PickEvent ( name , canvas , mouseevent , artist , guiEvent = None , ** kwargs ) [Quelle] #
Basen:
Event
Ein Pick-Event.
Dieses Ereignis wird ausgelöst, wenn der Benutzer einen Ort auf der Leinwand auswählt, der ausreichend nahe an einem Künstler liegt, der mit ausgewählt werden kann
Artist.set_picker
.Ein PickEvent verfügt zusätzlich zu den von der übergeordneten
Event
Klasse definierten Attributen über eine Reihe spezieller Attribute.Beispiele
Binden Sie eine Funktion
on_pick()
an Auswahlereignisse, die die Koordinaten des ausgewählten Datenpunkts druckt:ax.plot(np.rand(100), 'o', picker=5) # 5 points tolerance def on_pick(event): line = event.artist xdata, ydata = line.get_data() ind = event.ind print('on pick line:', np.array([xdata[ind], ydata[ind]]).T) cid = fig.canvas.mpl_connect('pick_event', on_pick)
- Attribute :
- Mausereignis
MouseEvent
Das Mausereignis, das die Auswahl generiert hat.
- Künstler
matplotlib.artist.Artist
Der ausgesuchte Künstler. Beachten Sie, dass Künstler standardmäßig nicht auswählbar sind (siehe
Artist.set_picker
).- Sonstiges
Abhängig vom Typ des ausgewählten Objekts können zusätzliche Attribute vorhanden sein; zB kann eine
Line2D
Auswahl andere zusätzliche Attribute als einePatchCollection
Auswahl definieren.
- Mausereignis
- Klasse matplotlib.backend_bases. RendererBase [Quelle] #
Basen:
object
Eine abstrakte Basisklasse zur Handhabung von Zeichen-/Rendering-Vorgängen.
Die folgenden Methoden müssen im Backend implementiert werden, um die volle Funktionalität zu gewährleisten (obwohl die Implementierung
draw_path
allein ein hochleistungsfähiges Backend ergeben würde):Folgende Methoden sollten aus Optimierungsgründen im Backend implementiert werden:
- close_group ( s ) [Quelle] #
Schließen Sie ein Gruppierungselement mit dem Label s ab .
Wird nur vom SVG-Renderer verwendet.
- draw_gouraud_triangle ( gc , points , colors , transform ) [Quelle] #
Zeichne ein Gouraud-schattiertes Dreieck.
- Parameter :
- gg
GraphicsContextBase
Der grafische Kontext.
- Punkte (3, 2) Array-artig
Array von (x, y) Punkten für das Dreieck.
- Farben (3, 4) Array-artig
RGBA-Farben für jeden Punkt des Dreiecks.
- verwandeln
matplotlib.transforms.Transform
Eine affine Transformation, die auf die Punkte angewendet werden soll.
- gg
- draw_gouraud_triangles ( gc , triangles_array , colors_array , transform ) [Quelle] #
Zeichne eine Reihe von Gouraud-Dreiecken.
- Parameter :
- Punkte (N, 3, 2) Array-artig
Array von N (x, y) Punkten für die Dreiecke.
- Farben (N, 3, 4) Array-artig
Array von N RGBA-Farben für jeden Punkt der Dreiecke.
- verwandeln
matplotlib.transforms.Transform
Eine affine Transformation, die auf die Punkte angewendet werden soll.
- draw_image ( gc , x , y , im , transform = None ) [Quelle] #
Zeichnen Sie ein RGBA-Bild.
- Parameter :
- gg
GraphicsContextBase
Ein Grafikkontext mit Clipping-Informationen.
- x Skalar
Der Abstand in physikalischen Einheiten (dh Punkte oder Pixel) von der linken Seite der Leinwand.
- y Skalar
Der Abstand in physikalischen Einheiten (dh Punkte oder Pixel) von der unteren Seite der Leinwand.
- im (N, M, 4) Array-ähnlich von np.uint8
Ein Array von RGBA-Pixeln.
- verwandeln
matplotlib.transforms.Affine2DBase
Nur wenn das konkrete Backend so geschrieben ist, dass es
option_scale_image
zurückgibt , kannTrue
eine affine Transformation (dh einAffine2DBase
) an übergeben werden . Der Translationsvektor der Transformation wird in physikalischen Einheiten (dh Punkten oder Pixeln) angegeben. Beachten Sie, dass die Transformation x und y nicht überschreibt und angewendet werden muss, bevor das Ergebnis durch x und y übersetzt wird (dies kann erreicht werden, indem x und y zu dem durch transform definierten Übersetzungsvektor hinzugefügt werden ).draw_image
- gg
- draw_markers ( gc , marker_path , marker_trans , path , trans , rgbFace = None ) [Quelle] #
Zeichnen Sie eine Markierung an jedem Scheitelpunkt von Pfad (außer Kontrollpunkten).
Die Basisimplementierung (Fallback) führt mehrere Aufrufe von
draw_path
. Back-Ends möchten diese Methode möglicherweise überschreiben, um die Markierung nur einmal zu zeichnen und mehrmals wiederzuverwenden.- Parameter :
- gg
GraphicsContextBase
Der grafische Kontext.
- marker_trans
matplotlib.transforms.Transform
Eine auf den Marker angewendete affine Transformation.
- trans
matplotlib.transforms.Transform
Eine auf den Pfad angewendete affine Transformation.
- gg
- draw_path ( gc , path , transform , rgbFace = None ) [Quelle] #
Zeichne eine
Path
Instanz mit der gegebenen affinen Transformation.
- draw_path_collection ( gc , master_transform , paths , all_transforms , offsets , offset_trans , facecolors , edgecolors , linewidths , linestyles , antialiaseds , urls , offset_position ) [source] #
Zeichnen Sie eine Sammlung von Pfaden .
Jeder Pfad wird zuerst durch den entsprechenden Eintrag in all_transforms (eine Liste von (3, 3)-Matrizen) und dann durch master_transform transformiert . Sie werden dann durch den entsprechenden Eintrag in offsets übersetzt , der zuvor durch offset_trans transformiert wurde .
facecolors , edgecolors , linewidths , linestyles und antialiased sind Listen, die die entsprechenden Eigenschaften festlegen.
offset_position wird jetzt nicht verwendet, aber das Argument wird aus Gründen der Abwärtskompatibilität beibehalten.
Die Basisimplementierung (Fallback) führt mehrere Aufrufe von
draw_path
. Backends möchten dies möglicherweise überschreiben, um jeden Satz von Pfaddaten nur einmal zu rendern und dann diesen Pfad mehrmals mit den verschiedenen Offsets, Farben, Stilen usw. zu referenzieren. Die Generatormethoden_iter_collection_raw_paths
und_iter_collection
werden bereitgestellt, um bei der Implementierung zu helfen (und diese zu standardisieren). über Backends hinweg. Es wird dringend empfohlen, diese Generatoren zu verwenden, damit Änderungen am Verhalten vondraw_path_collection
global vorgenommen werden können.
- draw_quad_mesh ( gc , master_transform , meshWidth , meshHeight , Koordinaten , offsets , offsetTrans , facecolors , antialiased , edgecolors ) [Quelle] #
Zeichnen Sie ein Quadmesh.
Die Basisimplementierung (Fallback) konvertiert das Quadmesh in Pfade und ruft dann auf
draw_path_collection
.
- draw_text ( gc , x , y , s , prop , angle , ismath = False , mtext = None ) [Quelle] #
Zeichnen Sie eine Textinstanz.
- Parameter :
- gg
GraphicsContextBase
Der grafische Kontext.
- x schweben
Die x-Position des Textes in Anzeigekoordinaten.
- y schweben
Die y-Position der Textgrundlinie in Anzeigekoordinaten.
- s -str
Die Textzeichenfolge.
- Stütze
matplotlib.font_manager.FontProperties
Die Schrifteigenschaften.
- Winkelschwimmer _
Der Drehwinkel in Grad gegen den Uhrzeigersinn.
- Text
matplotlib.text.Text
Das ursprüngliche Textobjekt, das gerendert werden soll.
- gg
Anmerkungen
Hinweis für Backend-Implementierer:
Wenn Sie versuchen festzustellen, ob Sie Ihren Begrenzungsrahmen richtig gemacht haben (was das Textlayout / die Textausrichtung ermöglicht, richtig zu funktionieren), hilft es, die Zeile in text.py zu ändern:
if 0: bbox_artist(self, renderer)
zu if 1, und dann wird der eigentliche Begrenzungsrahmen zusammen mit Ihrem Text geplottet.
- flipy ( ) [Quelle] #
Gibt zurück, ob y-Werte von oben nach unten zunehmen.
Beachten Sie, dass dies nur das Zeichnen von Texten betrifft.
- get_canvas_width_height ( ) [Quelle] #
Gibt die Leinwandbreite und -höhe in Anzeigekoordinaten zurück.
- get_image_magnification ( ) [Quelle] #
Holen Sie sich den Faktor, um den Bilder vergrößert werden sollen, die an übergeben werden
draw_image
. Ermöglicht einem Backend, Bilder mit einer anderen Auflösung als andere Künstler zu haben.
- get_texmanager ( ) [Quelle] #
Geben Sie die
TexManager
Instanz zurück.
- get_text_width_height_descent ( s , prop , ismath ) [Quelle] #
Holen Sie sich Breite, Höhe und Gefälle (Versatz von unten zur Grundlinie) der Zeichenkette s mit prop in Anzeigekoordinaten .
FontProperties
- new_gc ( ) [Quelle] #
Gibt eine Instanz von a zurück
GraphicsContextBase
.
- open_group ( s , gid = None ) [Quelle] #
Öffnen Sie ein Gruppierungselement mit Label s und gid (falls gesetzt) als id.
Wird nur vom SVG-Renderer verwendet.
- option_image_nocomposite ( ) [Quelle] #
Gibt zurück, ob die Bildkomposition durch Matplotlib übersprungen werden soll.
Raster-Backends sollten normalerweise False zurückgeben (wobei der C-Level-Rasterizer sich um die Bildkomposition kümmert); Vektor-Backends sollten normalerweise .
not rcParams["image.composite_image"]
- option_scale_image ( ) [Quelle] #
Gibt zurück, ob beliebige affine Transformationen in
draw_image
unterstützt werden (True für die meisten Vektor-Backends).
- points_to_pixels ( Punkte ) [Quelle] #
Konvertieren Sie Punkte in Anzeigeeinheiten.
Sie müssen diese Funktion überschreiben (es sei denn, Ihr Backend hat keine dpi, z. B. Postscript oder SVG). Einige Bildgebungssysteme gehen von einem bestimmten Wert für Pixel pro Zoll aus:
points to pixels = points * pixels_per_inch/72 * dpi/72
- Parameter :
- Punkte Floating oder Array-artig
ein Float oder ein numpy-Array von Float
- Rückgaben :
- Punkte in Pixel umgewandelt
- start_filter ( ) [Quelle] #
Wechseln Sie zu einem temporären Renderer für Bildfiltereffekte.
Derzeit nur vom agg-Renderer unterstützt.
- start_rasterizing ( ) [Quelle] #
Wechseln Sie zum Raster-Renderer.
Verwendet von
MixedModeRenderer
.
- stop_filter ( filter_func ) [Quelle] #
Wechseln Sie zurück zum ursprünglichen Renderer. Der Inhalt des temporären Renderers wird mit der filter_func verarbeitet und als Bild auf den Original-Renderer gezeichnet.
Derzeit nur vom agg-Renderer unterstützt.
- stop_rasterizing ( ) [Quelle] #
Wechseln Sie zurück zum Vektor-Renderer und zeichnen Sie den Inhalt des Raster-Renderers als Bild auf dem Vektor-Renderer.
Verwendet von
MixedModeRenderer
.
- Klasse matplotlib.backend_bases. ResizeEvent ( name , canvas ) [Quelle] #
Basen:
Event
Ein Ereignis, das durch eine Größenänderung der Leinwand ausgelöst wird.
Ein ResizeEvent hat zusätzlich zu den von der übergeordneten
Event
Klasse definierten Attributen eine Reihe spezieller Attribute.- Attribute :
- Breite int
Breite der Leinwand in Pixel.
- Höhe int
Höhe der Leinwand in Pixel.
- Klasse matplotlib.backend_bases. ShowBase [Quelle] #
Basen:
_Backend
Einfache Basisklasse zum Generieren einer
show()
Funktion in Backends.Die Unterklasse muss die
mainloop()
Methode überschreiben.
- Klasse matplotlib.backend_bases. TimerBase ( Intervall = None , Callbacks = None ) [Quelle] #
Basen:
object
Eine Basisklasse zum Bereitstellen von Timer-Ereignissen, die für Animationen von Dingen nützlich sind. Backends müssen einige spezifische Methoden implementieren, um ihre eigenen Timing-Mechanismen zu verwenden, damit die Timer-Ereignisse in ihre Ereignisschleifen integriert werden.
Unterklassen müssen die folgenden Methoden überschreiben:
_timer_start
: Backend-spezifischer Code zum Starten des Timers._timer_stop
: Backend-spezifischer Code zum Stoppen des Timers.
Unterklassen können zusätzlich die folgenden Methoden überschreiben:
_timer_set_single_shot
: Code zum Setzen des Timers in den Single-Shot-Betriebsmodus, falls vom Timer-Objekt unterstützt. Wenn nicht,Timer
speichert die Klasse selbst das Flag und die_on_timer
Methode sollte überschrieben werden, um ein solches Verhalten zu unterstützen._timer_set_interval
: Code zum Einstellen des Intervalls auf dem Timer, wenn es eine Methode dafür auf dem Timer-Objekt gibt._on_timer
: Die interne Funktion, die jedes Timer-Objekt aufrufen sollte, die die Aufgabe übernimmt, alle gesetzten Rückrufe auszuführen.
- Parameter :
- Intervall int, Standard: 1000 ms
Die Zeit zwischen Zeitgeberereignissen in Millisekunden. Wird gespeichert als
timer.interval
.- Rückrufliste [tuple[callable, tuple, dict]]
Liste von (func, args, kwargs) Tupeln, die bei Timer-Ereignissen aufgerufen werden. Diese Liste ist zugänglich
timer.callbacks
und kann direkt manipuliert werden, oder die Funktionenadd_callback
undremove_callback
können verwendet werden.
- add_callback ( func , * args , ** kwargs ) [Quelle] #
Registrieren Sie func , die vom Timer aufgerufen werden soll, wenn das Ereignis ausgelöst wird. Alle zusätzlich bereitgestellten Argumente werden an func übergeben .
Diese Funktion gibt func zurück , was es möglich macht, sie als Decorator zu verwenden.
- Eigenschaftsintervall # _
Die Zeit zwischen Zeitgeberereignissen in Millisekunden.
- remove_callback ( func , * args , ** kwargs ) [Quelle] #
Funktion aus der Liste der Callbacks entfernen .
args und kwargs sind optional und werden verwendet, um zwischen Kopien derselben Funktion zu unterscheiden, die für den Aufruf mit unterschiedlichen Argumenten registriert sind. Dieses Verhalten ist veraltet. Wird zukünftig nicht mehr berücksichtigt; Um einen bestimmten Rückruf selbst entfernbar zu halten, übergeben Sie ihn als Objekt.
*args, **kwargs
add_callback
functools.partial
- Eigenschaft single_shot #
Ob dieser Timer nach einem einzelnen Lauf stoppen soll.
- Klasse matplotlib.backend_bases. ToolContainerBase ( Toolmanager ) [Quelle] #
Basen:
object
Basisklasse für alle Tool-Container, zB Symbolleisten.
- Attribute :
- Werkzeugmanager
ToolManager
Die Tools, mit denen dieser
ToolContainer
kommunizieren will.
- Werkzeugmanager
- add_tool ( Werkzeug , Gruppe , Position = -1 ) [Quelle] #
Fügen Sie diesem Container ein Werkzeug hinzu.
- Parameter :
- Werkzeug werkzeugähnlich
Das hinzuzufügende Werkzeug finden Sie unter
ToolManager.get_tool
.- Gruppenstr _
Der Name der Gruppe, der dieses Tool hinzugefügt werden soll.
- Position int, Standard: -1
Die Position innerhalb der Gruppe, um dieses Werkzeug zu platzieren.
- add_toolitem ( name , group , position , image , description , toggle ) [source] #
Fügen Sie dem Container ein Toolitem hinzu.
Diese Methode muss pro Backend implementiert werden.
Der mit dem Klickereignis der Schaltfläche verknüpfte Rückruf muss genau
self.trigger_tool(name)
sein .- Parameter :
- Namensstr _
Name des hinzuzufügenden Tools. Dieser wird als ID des Tools und als Standardbeschriftung der Schaltflächen verwendet.
- Gruppenstr _
Name der Gruppe, zu der dieses Tool gehört.
- Position int
Position des Werkzeugs innerhalb seiner Gruppe, bei -1 geht es ans Ende.
- Bildstr _
Dateiname des Bildes für die Schaltfläche oder
None
.- Beschreibung Str
Beschreibung des Werkzeugs, das für die QuickInfos verwendet wird.
- bool umschalten
- remove_toolitem ( name ) [Quelle] #
Entfernen Sie ein Toolitem aus der
ToolContainer
.Diese Methode muss pro Backend implementiert werden.
Wird aufgerufen, wenn
ToolManager
eine emittiert wirdtool_removed_event
.- Parameter :
- Namensstr _
Name des zu entfernenden Tools.
- set_message ( s ) [Quelle] #
Zeigen Sie eine Nachricht in der Symbolleiste an.
- Parameter :
- s -str
Nachrichtentext.
- matplotlib.backend_bases. button_press_handler ( event , canvas = None , toolbar = None ) [Quelle] #
Die standardmäßigen Matplotlib-Tastenaktionen für zusätzliche Maustasten.
Die Parameter sind wie für
key_press_handler
, außer dass das Ereignis ein istMouseEvent
.
- matplotlib.backend_bases. get_registered_canvas_class ( Format ) [Quelle] #
Gibt den registrierten Standard-Canvas für das angegebene Dateiformat zurück. Behandelt den verzögerten Import des erforderlichen Backends.
- matplotlib.backend_bases. key_press_handler ( event , canvas = None , toolbar = None ) [Quelle] #
Implementieren Sie die standardmäßigen Matplotlib-Tastenbelegungen für die Leinwand und die Symbolleiste, die unter Tastenkombinationen für die Navigation beschrieben werden .
- Parameter :
- Veranstaltung
KeyEvent
Ein Ereignis zum Drücken/Loslassen einer Taste.
- Leinwand
FigureCanvasBase
, Standard:event.canvas
Die Back-End-spezifische Canvas-Instanz. Dieser Parameter wird aus Gründen der Abwärtskompatibilität beibehalten, sollte aber, wenn er gesetzt ist, immer gleich sein
event.canvas
.- Symbolleiste
NavigationToolbar2
, Standard:event.canvas.toolbar
Die Symbolleiste des Navigationscursors. Dieser Parameter wird aus Gründen der Abwärtskompatibilität beibehalten, sollte aber, wenn er gesetzt ist, immer gleich sein
event.canvas.toolbar
.
- Veranstaltung
- matplotlib.backend_bases. register_backend ( format , backend , description = None ) [source] #
Registrieren Sie ein Backend zum Speichern in einem bestimmten Dateiformat.
- Parameter :
- formatieren str
Dateierweiterung
- Backend -Modul-String oder Canvas-Klasse
Backend zur Handhabung der Dateiausgabe
- Beschreibungszeichenfolge , Standard: ""
Beschreibung des Dateityps.