matplotlib.layout_engine
#
Klassen zu Layoutelementen in einer Figure
.
Abbildungen haben eine layout_engine
Eigenschaft, die eine hier definierte Unterklasse enthält
LayoutEngine
(oder None für kein Layout). Zur Ziehzeit
figure.get_layout_engine().execute()
wird aufgerufen, deren Ziel normalerweise darin besteht, die Achsen auf der Figur neu anzuordnen, um ein ansprechendes Layout zu erzeugen. Dies ist wie ein draw
Rückruf, aber beim Drucken deaktivieren wir die Layout-Engine für die endgültige Zeichnung, und es ist nützlich, die Layout-Engine zu kennen, während die Figur erstellt wird, insbesondere um mit Farbbalken umzugehen.
Matplotlib stellt zwei Layout-Engines TightLayoutEngine
und
ConstrainedLayoutEngine
. Drittanbieter können ihre eigene Layout-Engine erstellen, indem sie Unterklassen erstellen LayoutEngine
.
- Klasse matplotlib.layout_engine. ConstrainedLayoutEngine ( * , h_pad = None , w_pad = None , hspace = None , wspace = None , rect = (0, 0, 1, 1) , compress = False , ** kwargs ) [Quelle] #
Implementiert die
constrained_layout
Geometrieverwaltung. Weitere Informationen finden Sie im Leitfaden zum beschränkten Layout .constrained_layout
Einstellungen initialisieren .- Parameter :
- h_pad, w_pad schweben
Padding um die Achsenelemente in figurnormalisierten Einheiten. Standardmäßig
rcParams["figure.constrained_layout.h_pad"]
(Standard:0.04167
) undrcParams["figure.constrained_layout.w_pad"]
(Standard:0.04167
).- hspace, wspace float
Bruchteil der Figur, der dem Raum zwischen den Achsen gewidmet ist. Diese verteilen sich gleichmäßig auf die Lücken zwischen den Achsen. Ein Wert von 0,2 für ein dreispaltiges Layout hätte einen Abstand von 0,1 der Zeichenbreite zwischen jeder Spalte. Wenn h/wspace < h/w_pad, dann werden stattdessen die Pads verwendet. Standardmäßig
rcParams["figure.constrained_layout.hspace"]
(Standard:0.02
) undrcParams["figure.constrained_layout.wspace"]
(Standard:0.02
).- Rect- Tupel von 4 Floats
Rechteck in Abbildungskoordinaten zum Durchführen eines eingeschränkten Layouts in (links, unten, Breite, Höhe), jeweils von 0-1.
- bool komprimieren
Ob Achsen verschoben werden sollen, damit der Leerraum zwischen ihnen entfernt wird. Dies ist nützlich für einfache Raster aus Achsen mit festem Aspekt (z. B. ein Raster aus Bildern). Siehe Raster von Achsen mit festem Seitenverhältnis: "komprimiertes" Layout .
- Eigenschaft adjust_compatible #
Gibt einen booleschen Wert zurück, wenn die Layout-Engine mit kompatibel ist
subplots_adjust
.
- Eigenschaft colorbar_gridspec #
Gibt einen booleschen Wert zurück, wenn die Layout-Engine Farbbalken mit einer Rasterspezifikation erstellt.
- Ausführen ( fig ) [Quelle] #
Führen Sie constrained_layout aus und verschieben Sie die Achsen entsprechend und ändern Sie deren Größe.
- Parameter :
- fig
Figure
, um das Layout auszuführen.
- fig
- set ( * , h_pad = None , w_pad = None , hspace = None , wspace = None , rect = None ) [Quelle] #
Legen Sie die Pads für constrained_layout fest.
- Parameter :
- h_pad, w_pad schweben
Padding um die Achsenelemente in figurnormalisierten Einheiten. Standardmäßig
rcParams["figure.constrained_layout.h_pad"]
(Standard:0.04167
) undrcParams["figure.constrained_layout.w_pad"]
(Standard:0.04167
).- hspace, wspace float
Bruchteil der Figur, der dem Raum zwischen den Achsen gewidmet ist. Diese verteilen sich gleichmäßig auf die Lücken zwischen den Achsen. Ein Wert von 0,2 für ein dreispaltiges Layout hätte einen Abstand von 0,1 der Zeichenbreite zwischen jeder Spalte. Wenn h/wspace < h/w_pad, dann werden stattdessen die Pads verwendet. Standardmäßig
rcParams["figure.constrained_layout.hspace"]
(Standard:0.02
) undrcParams["figure.constrained_layout.wspace"]
(Standard:0.02
).- Rect- Tupel von 4 Floats
Rechteck in Abbildungskoordinaten zum Durchführen eines eingeschränkten Layouts in (links, unten, Breite, Höhe), jeweils von 0-1.
- Klasse matplotlib.layout_engine. LayoutEngine ( ** kwargs ) [Quelle] #
Basisklasse für Matplotlib-Layout-Engines.
Eine Layout-Engine kann bei der Instanziierung oder jederzeit mit an eine Figur übergeben werden
set_layout_engine
. Sobald sie an eine Figur angehängt ist, wird die Layout-Engine-execute
Funktion zur Zeichenzeit von aufgerufendraw
, was einen speziellen Zeichenzeit-Hook bereitstellt.Notiz
Beachten Sie jedoch, dass Layout-Engines die Erstellung von Farbbalken beeinflussen und daher
set_layout_engine
aufgerufen werden sollten, bevor Farbbalken erstellt werden.Derzeit gibt es zwei Eigenschaften von
LayoutEngine
Klassen, die beim Bearbeiten der Figur konsultiert werden:engine.colorbar_gridspec
sagt,Figure.colorbar
ob man das machen sollAchsen mit der Gridspec-Methode (siehe
colorbar.make_axes_gridspec
) oder nicht (siehecolorbar.make_axes
);
engine.adjust_compatible
hörtFigure.subplots_adjust
auf zu seinausführen, wenn es nicht mit der Layout-Engine kompatibel ist.
So implementieren Sie eine benutzerdefinierte
LayoutEngine
:überschreiben
_adjust_compatible
und_colorbar_gridspec
überschreiben , um self._params
LayoutEngine.set
zu aktualisierenLayoutEngine.execute
mit Ihrer Implementierung überschreiben
- Eigenschaft adjust_compatible #
Gibt einen booleschen Wert zurück, wenn die Layout-Engine mit kompatibel ist
subplots_adjust
.
- Eigenschaft colorbar_gridspec #
Gibt einen booleschen Wert zurück, wenn die Layout-Engine Farbbalken mit einer Rasterspezifikation erstellt.
- Klasse matplotlib.layout_engine. PlaceHolderLayoutEngine ( adjust_compatible , colorbar_gridspec , ** kwargs ) [Quelle] #
Diese Layout-Engine passt das Figurenlayout überhaupt nicht an.
Der Zweck
LayoutEngine
besteht darin, als Platzhalter zu fungieren, wenn der Benutzer eine Layout-Engine entfernt, um sicherzustellen,LayoutEngine
dass später kein Inkompatibles gesetzt werden kann.- Parameter :
- adjust_compatible, colorbar_gridspec bool
Ermöglichen Sie der PlaceHolderLayoutEngine, das Verhalten der Layout-Engine zu spiegeln, die sie ersetzt.
- Eigenschaft adjust_compatible #
Gibt einen booleschen Wert zurück, wenn die Layout-Engine mit kompatibel ist
subplots_adjust
.
- Eigenschaft colorbar_gridspec #
Gibt einen booleschen Wert zurück, wenn die Layout-Engine Farbbalken mit einer Rasterspezifikation erstellt.
- Klasse matplotlib.layout_engine. TightLayoutEngine ( * , pad = 1.08 , h_pad = None , w_pad = None , rect = (0, 0, 1, 1) , ** kwargs ) [Quelle] #
Implementiert die
tight_layout
Geometrieverwaltung. Einzelheiten finden Sie in der Anleitung zum straffen Layout .Initialisieren Sie die tight_layout-Engine.
- Parameter :
- Padschwimmer , 1.08
Abstand zwischen dem Abbildungsrand und den Rändern von Subplots als Bruchteil der Schriftgröße.
- h_pad, w_pad schweben
Padding (Höhe/Breite) zwischen den Rändern benachbarter Subplots. Standardmäßig auf pad .
- Rect -Tupel (links, unten, rechts, oben), Standard: (0, 0, 1, 1).
Rechteck in normalisierten Figurkoordinaten, in das die Subplots (einschließlich Beschriftungen) passen.
- Eigenschaft adjust_compatible #
Gibt einen booleschen Wert zurück, wenn die Layout-Engine mit kompatibel ist
subplots_adjust
.
- Eigenschaft colorbar_gridspec #
Gibt einen booleschen Wert zurück, wenn die Layout-Engine Farbbalken mit einer Rasterspezifikation erstellt.
- Ausführen ( fig ) [Quelle] #
Führen Sie tight_layout aus.
Dies bestimmt die Subplot-Parameter bei gegebener Polsterung, die es ermöglicht, dass die Achsenbeschriftungen nicht von anderen Beschriftungen und Achsen verdeckt werden.
- Parameter :
- fig
Figure
, um das Layout auszuführen. - Siehe auch: `.figure.Figure.tight_layout` und `.pyplot.tight_layout`.
- fig