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 Figurevom 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 KeyEventund MouseEventspeichern die Metadaten wie gedrückte Tasten und Schaltflächen, x- und y-Positionen in Pixel und AxesKoordinaten.

ShowBase

Die Basisklasse für die ShowKlasse jedes interaktiven Backends; das Callable 'show' wird dann auf gesetzt Show.__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.drawund canvas.blitin 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 EventKlasse definierten Attributen über eine Reihe spezieller Attribute.

Attribute :
RendererRendererBase

Der Renderer für das Draw-Ereignis.

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.

LeinwandFigureCanvasBase

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 :
Zahlmatplotlib.figure.Figure

Eine High-Level-Figureninstanz.

blit ( bbox = None ) [Quelle] #

Blitten Sie die Leinwand in bbox (standardmäßig gesamte Leinwand).

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 MouseEventInstanz 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 MouseEventInstanz 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 CloseEventan alle Funktionen, die mit verbunden sind close_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 DrawEventan alle Funktionen, die mit verbunden sind draw_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_idleauftreten, 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 Axesfest, 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 :
Axesoder Keine

Die 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 KeyEventan alle Funktionen, die mit verbunden sind key_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 KeyEventan alle Funktionen, die mit verbunden sind key_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 vonFigureManagerBase

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 MouseEventInstanz 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 inaxesAttribut des Ereignisses auf das AxesEnde des Ereignisses gesetzt, und zusätzlich werden die Variablen xdataund ydataAttribute auf die Maus gesetzt Standort in Datenkoordinaten. Siehe KeyEvent und MouseEventfü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 Falseoder 0aus 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 PickEventRü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 ResizeEventan alle Funktionen, die mit verbunden sind resize_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.

MouseEventDiese 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 :
MauszeigerCursors

Der Cursor, der über der Leinwand angezeigt werden soll. Hinweis: Einige Backends können den Cursor für das gesamte Fenster ändern.

start_event_loop ( timeout = 0 ) [Quelle] #

Starten Sie eine blockierende Ereignisschleife.

Eine solche Ereignisschleife wird von interaktiven Funktionen wie ginputund verwendet waitforbuttonpress, um auf Ereignisse zu warten.

Die Ereignisschleife blockiert, bis eine Callback-Funktion auslöst stop_event_loopoder 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_eventseine 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_handleran 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 windowund - toolbarAttribute, die den Zugriff auf die nativen GUI-Widgets des jeweiligen Frameworks ermöglichen.

Attribute :
LeinwandFigureCanvasBase

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)
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.

zerstören ( ) [Quelle] #
full_screen_toggle ( ) [Quelle] #
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.

copy_properties ( gc ) [Quelle] #

Eigenschaften von gc nach self kopieren.

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_capstyle ( ) [Quelle] #

Geben Sie die zurück CapStyle.

get_clip_path ( ) [Quelle] #

Gibt den Clip-Pfad in der Form (path, transform) zurück, wobei path eine PathInstanz und transform eine affine Transformation ist, die vor dem Clipping auf den Pfad angewendet wird.

get_clip_rectangle ( ) [Quelle] #

Gibt das Clip-Rechteck als BboxInstanz zurück.

get_dashes ( ) [Quelle] #

Gibt den Strichstil als (Offset, Strichliste)-Paar zurück.

Siehe set_dashesfü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_gid ( ) [Quelle] #

Gibt den Objektbezeichner zurück, falls einer gesetzt ist, andernfalls None.

get_hatch ( ) [Quelle] #

Rufen Sie den aktuellen Schraffurstil ab.

get_hatch_color ( ) [Quelle] #

Holen Sie sich die Schraffurfarbe.

get_hatch_linewidth ( ) [Quelle] #

Holen Sie sich die Linienbreite der Schraffur.

get_hatch_path ( Dichte = 6,0 ) [Quelle] #

Geben Sie a Pathfür die aktuelle Schraffur zurück.

get_joinstyle ( ) [Quelle] #

Geben Sie die zurück JoinStyle.

get_linewidth ( ) [Quelle] #

Gibt die Linienbreite in Punkten zurück.

get_rgb ( ) [Quelle] #

Gibt ein Tupel von drei oder vier Gleitkommazahlen von 0-1 zurück.

get_sketch_params ( ) [Quelle] #

Geben Sie die Skizzenparameter für den Künstler zurück.

Rückgaben :
Tupel bzwNone

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, Nonewenn keine Skizzenparameter festgelegt wurden.

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

get_url ( ) [Quelle] #

Gibt eine URL zurück, wenn eine festgelegt ist, andernfalls keine.

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); andernfalls alphawerden 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 CapStyleoder {'butt', 'projecting', 'round'}
set_clip_path ( Pfad ) [Quelle] #

Stellen Sie den Clip-Pfad auf a TransformedPathoder None ein.

set_clip_rectangle ( Rechteck ) [Quelle] #

Stellen Sie das Clip-Rechteck auf a Bboxoder 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_gid ( id ) [Quelle] #

Legen Sie die ID fest.

set_hatch ( Schraffur ) [Quelle] #

Legen Sie den Schraffurstil (für Füllungen) fest.

set_hatch_color ( hatch_color ) [Quelle] #

Legen Sie die Schraffurfarbe fest.

set_joinstyle ( js ) [Quelle] #

Legen Sie fest, wie Verbindungen zwischen Liniensegmenten gezeichnet werden.

Parameter :
js JoinStyleoder {'miter', 'round', 'bevel'}
set_linewidth ( w ) [Quelle] #

Legen Sie die Linienbreite in Punkten fest.

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

set_url ( url ) [Quelle] #

Legen Sie die URL für Links in kompatiblen Backends fest.

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- Eventund LocationEventKlassen 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 EventKlasse definierten Attributen eine Reihe spezieller Attribute.

Attribute :
x, y int oder Keine

Ereignisort in Pixeln von unten links auf der Leinwand.

inaxes Axesoder None

Die AxesInstanz, über der sich die Maus befindet, falls vorhanden.

xdata, ydata float oder None

Datenkoordinaten der Maus innerhalb von inaxes oder None , wenn sich die Maus nicht über Axes befindet.

lastevent = Keine #
Klasse matplotlib.backend_bases. Maustaste ( Wert ) [Quelle] #

Basen:IntEnum

Eine Aufzählung.

ZURÜCK = 8 [Quelle] #
WEITER = 9 [Quelle] #
LINKS = 1 [Quelle] #
MITTE = 2 [Quelle] #
RECHTS = 3 [Quelle] #
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- Eventund LocationEventKlassen 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 MouseButtonoder {'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.

Klasse matplotlib.backend_bases. NavigationToolbar2 ( Leinwand ) [Quelle] #

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 Methoden home, back, forward, pan, zoomund verbunden save_figuresind und Standardsymbole im Unterverzeichnis "images" des Datenpfads verwenden.

Das war's, den Rest erledigen wir!

zurück ( * args ) [Quelle] #

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.

configure_subplots ( * args ) [Quelle] #
drag_pan ( Ereignis ) [Quelle] #

Callback für das Ziehen im Pan/Zoom-Modus.

drag_zoom ( Ereignis ) [Quelle] #

Rückruf für das Ziehen im Zoom-Modus.

draw_rubberband ( Ereignis , x0 , y0 , x1 , y1 ) [Quelle] #

Zeichnen Sie ein rechteckiges Gummiband, um die Zoomgrenzen anzuzeigen.

Beachten Sie, dass nicht garantiert werden kann, dass und .x0 <= x1y0 <= y1

forward ( * args ) [Quelle] #

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.

home ( * args ) [Quelle] #

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.

mouse_move ( Ereignis ) [Quelle] #
pan ( * args ) [Quelle] #

Schalten Sie das Schwenk-/Zoom-Werkzeug um.

Mit der linken Taste schwenken, mit der rechten zoomen.

press_pan ( Ereignis ) [Quelle] #

Rückruf für das Drücken der Maustaste im Schwenk-/Zoom-Modus.

press_zoom ( Ereignis ) [Quelle] #

Callback für Maustastendruck im Zoom-to-Rect-Modus.

push_current ( ) [Quelle] #

Verschieben Sie die aktuellen Ansichtsgrenzen und positionieren Sie sie auf dem Stapel.

release_pan ( Ereignis ) [Quelle] #

Callback für das Loslassen der Maustaste im Pan/Zoom-Modus.

release_zoom ( Ereignis ) [Quelle] #

Callback für das Loslassen der Maustaste im Zoom-to-Rect-Modus.

remove_rubberband ( ) [Quelle] #

Entfernen Sie das Gummiband.

save_figure ( * args ) [Quelle] #

Speichern Sie die aktuelle Figur.

set_cursor ( Cursor ) [Quelle] #

[ Veraltet ] Setzt den aktuellen Cursor auf einen der CursorsAufzä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_cursorstattdessen.

set_history_buttons ( ) [Quelle] #

Aktivieren oder deaktivieren Sie die Schaltfläche „Zurück/Vorwärts“.

set_message ( s ) [Quelle] #

Zeigen Sie eine Nachricht auf der Symbolleiste oder in der Statusleiste an.

toolitems = (('Home', ' Originalansicht zurücksetzen ', 'home', 'home'), ('Back', 'Zurück zur vorherigen Ansicht', 'back', 'back'), ('Forward', ' Vorwärts zur nächsten Ansicht', 'vorwärts', 'vorwärts'), (Keine, Keine, Keine, Keine), ('Schwenken', 'Linke Taste schwenkt, Rechte Taste zoomt\nx/y fixiert Achse, STRG fixiert Aspekt', 'bewegen', 'schwenken'),('Zoom', ' Auf Rechteck zoomen\nx/y korrigiert Achse', 'zoom_to_rect', ' zoom'), (' Subplots', 'Subplots konfigurieren', 'subplots', ' configure_subplots'), (None, None, None, None), ('Save', 'Save the figure', 'filesave', 'save_figure')) #
update ( ) [Quelle] #

Setzen Sie den Achsenstapel zurück.

zoom ( * args ) [Quelle] #
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 EventKlasse 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 :
MausereignisMouseEvent

Das Mausereignis, das die Auswahl generiert hat.

Künstlermatplotlib.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 Line2DAuswahl andere zusätzliche Attribute als eine PatchCollectionAuswahl definieren.

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_pathallein 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 :
ggGraphicsContextBase

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.

verwandelnmatplotlib.transforms.Transform

Eine affine Transformation, die auf die Punkte angewendet werden soll.

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.

verwandelnmatplotlib.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 :
ggGraphicsContextBase

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.

verwandelnmatplotlib.transforms.Affine2DBase

Nur wenn das konkrete Backend so geschrieben ist, dass es option_scale_imagezurückgibt , kannTrue eine affine Transformation (dh ein Affine2DBase) 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

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 :
ggGraphicsContextBase

Der grafische Kontext.

marker_transmatplotlib.transforms.Transform

Eine auf den Marker angewendete affine Transformation.

transmatplotlib.transforms.Transform

Eine auf den Pfad angewendete affine Transformation.

draw_path ( gc , path , transform , rgbFace = None ) [Quelle] #

Zeichne eine PathInstanz 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_pathsund _iter_collectionwerden 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 von draw_path_collectionglobal 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_tex ( gc , x , y , s , prop , angle , * , mtext = None ) [Quelle] #
draw_text ( gc , x , y , s , prop , angle , ismath = False , mtext = None ) [Quelle] #

Zeichnen Sie eine Textinstanz.

Parameter :
ggGraphicsContextBase

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ützematplotlib.font_manager.FontProperties

Die Schrifteigenschaften.

Winkelschwimmer _

Der Drehwinkel in Grad gegen den Uhrzeigersinn.

Textmatplotlib.text.Text

Das ursprüngliche Textobjekt, das gerendert werden soll.

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 TexManagerInstanz 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_imageunterstü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 EventKlasse 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_timerMethode 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.callbacksund kann direkt manipuliert werden, oder die Funktionen add_callbackund remove_callbackkö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, **kwargsadd_callbackfunctools.partial

Eigenschaft single_shot #

Ob dieser Timer nach einem einzelnen Lauf stoppen soll.

start ( Intervall = None ) [Quelle] #

Starten Sie das Timer-Objekt.

Parameter :
Intervall int, optional

Zeitintervall in Millisekunden; überschreibt ein zuvor festgelegtes Intervall, falls vorhanden.

Stopp ( ) [Quelle] #

Stoppen Sie den Timer.

Klasse matplotlib.backend_bases. ToolContainerBase ( Toolmanager ) [Quelle] #

Basen:object

Basisklasse für alle Tool-Container, zB Symbolleisten.

Attribute :
WerkzeugmanagerToolManager

Die Tools, mit denen dieser ToolContainerkommunizieren will.

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
  • True: Die Schaltfläche ist ein Umschalter (ändert den gedrückten/nicht gedrückten Zustand zwischen aufeinanderfolgenden Klicks).

  • False: Die Taste ist eine normale Taste (kehrt nach dem Loslassen in den nicht gedrückten Zustand zurück).

remove_toolitem ( name ) [Quelle] #

Entfernen Sie ein Toolitem aus der ToolContainer.

Diese Methode muss pro Backend implementiert werden.

Wird aufgerufen, wenn ToolManagereine emittiert wird tool_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.

toggle_toolitem ( name , umgeschaltet ) [Quelle] #

Schalten Sie das Toolitem um, ohne ein Ereignis auszulösen.

Parameter :
Namensstr _

ID des umzuschaltenden Tools.

umgeschaltet bool

Ob dieses Werkzeug als umgeschaltet eingestellt werden soll oder nicht.

trigger_tool ( name ) [Quelle] #

Lösen Sie das Werkzeug aus.

Parameter :
Namensstr _

Name (ID) des Tools, das innerhalb des Containers ausgelöst wird.

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 ist MouseEvent.

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 :
VeranstaltungKeyEvent

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.

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.