matplotlib.backends.backend_agg#
Ein Anti-Grain Geometry (AGG) Backend.
Implementierte Funktionen
Kappen- und Verbindungstypen
dashes
Linienbreite (linewidth)
Linien, Rechtecke, Ellipsen
Beschneiden auf ein Rechteck
Ausgabe in RGBA und Pillow-unterstützte Bildformate
Alpha-Blending
DPI-Skalierung korrekt - alles skaliert korrekt (Striche, Linienstärken usw.)
Polygon zeichnen
freetype2 mit ft2font
Noch zu tun
Bildschirm-DPI mit PPI und Text integrieren
- matplotlib.backends.backend_agg.FigureCanvas[Quelle]#
Alias für
FigureCanvasAgg
- class matplotlib.backends.backend_agg.FigureCanvasAgg(figure=None)[Quelle]#
Bases:
FigureCanvasBase- buffer_rgba()[Quelle]#
Das Bild als
memoryviewauf den Puffer des Renderers abrufen.drawmuss mindestens einmal aufgerufen werden, bevor diese Funktion funktioniert und um den Renderer für spätere Änderungen an der Figur zu aktualisieren.
- draw()[Quelle]#
Rendert die
Figure.Diese Methode muss den Künstlerbaum durchlaufen, auch wenn keine Ausgabe erzeugt wird, da sie verzögerte Arbeiten auslöst, auf die Benutzer möglicherweise zugreifen möchten, bevor sie Ausgabe auf die Festplatte speichern. Zum Beispiel die Berechnung von Grenzen, automatischen Grenzen und Tick-Werten.
- print_jpeg(filename_or_obj, *, metadata=None, pil_kwargs=None)[Quelle]#
Die Figur in eine JPEG-Datei schreiben.
- Parameter:
- filename_or_objstr oder Pfad-ähnlich oder Dateizeiger
Die Datei, in die geschrieben werden soll.
- pil_kwargsdict, optional
Zusätzliche Schlüsselwortargumente, die beim Speichern der Figur an
PIL.Image.Image.saveübergeben werden.
- print_jpg(filename_or_obj, *, metadata=None, pil_kwargs=None)[Quelle]#
Die Figur in eine JPEG-Datei schreiben.
- Parameter:
- filename_or_objstr oder Pfad-ähnlich oder Dateizeiger
Die Datei, in die geschrieben werden soll.
- pil_kwargsdict, optional
Zusätzliche Schlüsselwortargumente, die beim Speichern der Figur an
PIL.Image.Image.saveübergeben werden.
- print_png(filename_or_obj, *, metadata=None, pil_kwargs=None)[Quelle]#
Die Figur in eine PNG-Datei schreiben.
- Parameter:
- filename_or_objstr oder Pfad-ähnlich oder Dateizeiger
Die Datei, in die geschrieben werden soll.
- metadatadict, optional
Metadaten in der PNG-Datei als Schlüssel-Wert-Paare von Bytes oder latin-1 kodierbaren Strings. Gemäß der PNG-Spezifikation müssen Schlüssel kürzer als 79 Zeichen sein.
Die PNG-Spezifikation definiert einige gängige Schlüsselwörter, die entsprechend verwendet werden können
Title: Kurzer (einzeiliger) Titel oder Bildunterschrift.
Author: Name des Erstellers des Bildes.
Description: Beschreibung des Bildes (möglicherweise lang).
Copyright: Copyright-Hinweis.
Creation Time: Zeitpunkt der ursprünglichen Bilderstellung (normalerweise im RFC 1123-Format).
Software: Software, die zur Erstellung des Bildes verwendet wurde.
Disclaimer: Rechtlicher Haftungsausschluss.
Warning: Warnung bezüglich der Art des Inhalts.
Source: Gerät, das zur Erstellung des Bildes verwendet wurde.
Comment: Verschiedene Kommentare; Konvertierung aus einem anderen Bildformat.
Andere Schlüsselwörter können für andere Zwecke erfunden werden.
Wenn 'Software' nicht angegeben ist, wird ein automatisch generierter Wert für Matplotlib verwendet. Dies kann entfernt werden, indem es auf *None* gesetzt wird.
Weitere Details finden Sie in der PNG-Spezifikation.
- pil_kwargsdict, optional
Schlüsselwortargumente, die an
PIL.Image.Image.saveübergeben werden.Wenn der Schlüssel 'pnginfo' vorhanden ist, überschreibt er *metadata* vollständig, einschließlich des Standard-Schlüssels 'Software'.
- print_tif(filename_or_obj, *, metadata=None, pil_kwargs=None)[Quelle]#
Die Figur in eine TIFF-Datei schreiben.
- Parameter:
- filename_or_objstr oder Pfad-ähnlich oder Dateizeiger
Die Datei, in die geschrieben werden soll.
- pil_kwargsdict, optional
Zusätzliche Schlüsselwortargumente, die beim Speichern der Figur an
PIL.Image.Image.saveübergeben werden.
- print_tiff(filename_or_obj, *, metadata=None, pil_kwargs=None)[Quelle]#
Die Figur in eine TIFF-Datei schreiben.
- Parameter:
- filename_or_objstr oder Pfad-ähnlich oder Dateizeiger
Die Datei, in die geschrieben werden soll.
- pil_kwargsdict, optional
Zusätzliche Schlüsselwortargumente, die beim Speichern der Figur an
PIL.Image.Image.saveübergeben werden.
- print_webp(filename_or_obj, *, metadata=None, pil_kwargs=None)[Quelle]#
Die Figur in eine WebP-Datei schreiben.
- Parameter:
- filename_or_objstr oder Pfad-ähnlich oder Dateizeiger
Die Datei, in die geschrieben werden soll.
- pil_kwargsdict, optional
Zusätzliche Schlüsselwortargumente, die beim Speichern der Figur an
PIL.Image.Image.saveübergeben werden.
- class matplotlib.backends.backend_agg.RendererAgg(width, height, dpi)[Quelle]#
Bases:
RendererBaseDer Renderer behandelt alle Zeichenprimitiven unter Verwendung einer Grafikkontextinstanz, die Farben/Stile steuert.
- draw_mathtext(gc, x, y, s, prop, angle)[Quelle]#
Mathtext mit
matplotlib.mathtextzeichnen.
- draw_path(gc, path, transform, rgbFace=None)[Quelle]#
Zeichnet eine
Path-Instanz mit der gegebenen affinen Transformation.
- draw_tex(gc, x, y, s, prop, angle, *, mtext=None)[Quelle]#
Zeichnet eine TeX-Instanz.
- Parameter:
- gc
GraphicsContextBase Der Grafikkontext.
- xfloat
Die x-Koordinate des Textes in Anzeigekoordinaten.
- yfloat
Die y-Koordinate der Textbasislinie in Anzeigekoordinaten.
- sstr
Der TeX-Textstring.
- prop
FontProperties Die Schrifteigenschaften.
- anglefloat
Der Rotationswinkel in Grad gegen den Uhrzeigersinn.
- mtext
Text Das ursprüngliche Textobjekt, das gerendert werden soll.
- gc
- draw_text(gc, x, y, s, prop, angle, ismath=False, mtext=None)[Quelle]#
Zeichnet eine Textinstanz.
- Parameter:
- gc
GraphicsContextBase Der Grafikkontext.
- xfloat
Die x-Koordinate des Textes in Anzeigekoordinaten.
- yfloat
Die y-Koordinate der Textbasislinie in Anzeigekoordinaten.
- sstr
Der Textstring.
- prop
FontProperties Die Schrifteigenschaften.
- anglefloat
Der Rotationswinkel in Grad gegen den Uhrzeigersinn.
- ismathbool oder "TeX"
Wenn True, verwende den mathtext-Parser.
- mtext
Text Das ursprüngliche Textobjekt, das gerendert werden soll.
- gc
Anmerkungen
Hinweise für Backend-Implementierer
RendererBase.draw_textunterstützt auch die Übergabe von "TeX" an den Parameter *ismath*, um TeX-Rendering zu verwenden, dies ist jedoch für tatsächliche Rendering-Backends nicht erforderlich, und viele integrierte Backends unterstützen dies nicht. Vielmehr wird TeX-Rendering vondraw_texbereitgestellt.
- get_canvas_width_height()[Quelle]#
Gibt die Breite und Höhe der Leinwand in Anzeigekoordinaten zurück.
- get_text_width_height_descent(s, prop, ismath)[Quelle]#
Gibt die Breite, Höhe und den Abstieg (Offset von unten zur Basislinie) in Anzeigekoordinaten des Strings s mit
FontPropertiesprop zurück.Leerzeichen am Anfang und Ende von s sind in der gemeldeten Breite enthalten.
- option_image_nocomposite()[Quelle]#
Gibt zurück, ob die Bildkomposition durch Matplotlib übersprungen werden soll.
Raster-Backends sollten normalerweise False zurückgeben (damit der C-Level-Rasterer die Bildkomposition übernimmt); Vektor-Backends sollten normalerweise
not rcParams["image.composite_image"]zurückgeben.
- option_scale_image()[Quelle]#
Gibt zurück, ob beliebige affine Transformationen in
draw_imageunterstützt werden (True für die meisten Vektorbackends).
- points_to_pixels(points)[Quelle]#
Konvertiert Punkte in Anzeigeeinheiten.
Sie müssen diese Funktion überschreiben (es sei denn, Ihr Backend hat keinen DPI-Wert, z. B. PostScript oder SVG). Einige Bildsysteme nehmen einen bestimmten Wert für Pixel pro Zoll an.
points to pixels = points * pixels_per_inch/72 * dpi/72
- Parameter:
- pointsfloat oder array-ähnlich
- Gibt zurück:
- Punkte, konvertiert in Pixel
- restore_region(region, bbox=None, xy=None)[Quelle]#
Stellt die gespeicherte Region wieder her. Wenn bbox (Instanz von BboxBase oder seine Ausdehnungen) gegeben ist, wird nur die durch die bbox spezifizierte Region wiederhergestellt. *xy* (ein Paar von Floats) gibt optional die neue Position an (die LLC der ursprünglichen Region, nicht die LLC der bbox), an der die Region wiederhergestellt wird.
>>> region = renderer.copy_from_bbox() >>> x1, y1, x2, y2 = region.get_extents() >>> renderer.restore_region(region, bbox=(x1+dx, y1, x2, y2), ... xy=(x1-dx, y1))
- start_filter()[Quelle]#
Filterung starten. Es wird einfach eine neue Leinwand erstellt (die alte wird gespeichert).
- stop_filter(post_processing)[Quelle]#
Speichert die aktuelle Leinwand als Bild und wendet die Nachbearbeitung an.
Die Funktion *post_processing*
def post_processing(image, dpi): # ny, nx, depth = image.shape # image (numpy array) has RGBA channels and has a depth of 4. ... # create a new_image (numpy array of 4 channels, size can be # different). The resulting image may have offsets from # lower-left corner of the original image return new_image, offset_x, offset_y
Der gespeicherte Renderer wird wiederhergestellt und das von post_processing zurückgegebene Bild wird darauf gezeichnet (mit draw_image).