matplotlib.layout_engine
#
Clases para diseñar elementos en un Figure
.
Las figuras tienen una layout_engine
propiedad que contiene una subclase
LayoutEngine
definida aquí (o Ninguno para ningún diseño). Se llama a la hora del sorteo
figure.get_layout_engine().execute()
, cuyo objetivo suele ser reorganizar los ejes en la figura para producir un diseño agradable. Esto es como una draw
devolución de llamada, sin embargo, al imprimir, deshabilitamos el motor de diseño para el dibujo final y es útil conocer el motor de diseño mientras se crea la figura, en particular para tratar con barras de color.
Matplotlib proporciona dos motores de diseño TightLayoutEngine
y
ConstrainedLayoutEngine
. Los terceros pueden crear su propio motor de diseño mediante subclases LayoutEngine
.
- clase matplotlib.layout_engine. ConstrainedLayoutEngine ( * , h_pad = Ninguno , w_pad = Ninguno , hspace = Ninguno , wspace = Ninguno , rect = (0, 0, 1, 1) , compress = False , ** kwargs ) [fuente] #
Implementa la
constrained_layout
gestión de la geometría. Consulte la Guía de diseño restringido para obtener más detalles.Inicializa la
constrained_layout
configuración.- Parámetros :
- h_pad, flotador w_pad
Relleno alrededor de los elementos de los ejes en unidades normalizadas por figuras. Predeterminado a
rcParams["figure.constrained_layout.h_pad"]
(predeterminado:0.04167
) yrcParams["figure.constrained_layout.w_pad"]
(predeterminado:0.04167
).- espacio h, espacio w flotante
Fracción de la figura a dedicar al espacio entre los ejes. Estos se distribuyen uniformemente entre los espacios entre los ejes. Un valor de 0,2 para un diseño de tres columnas tendría un espacio de 0,1 del ancho de la figura entre cada columna. Si h/wspace < h/w_pad, entonces se usan los pads en su lugar. Predeterminado a
rcParams["figure.constrained_layout.hspace"]
(predeterminado:0.02
) yrcParams["figure.constrained_layout.wspace"]
(predeterminado:0.02
).- tupla recta de 4 floats
Rectángulo en coordenadas de figura para realizar un diseño restringido en (izquierda, abajo, ancho, alto), cada uno de 0-1.
- comprimir bool
Si cambiar los ejes para que se eliminen los espacios en blanco entre ellos. Esto es útil para cuadrículas simples de ejes de aspecto fijo (por ejemplo, una cuadrícula de imágenes). Consulte Cuadrículas de ejes de relación de aspecto fija: diseño "comprimido" .
- propiedad ajuste_compatible #
Devuelve un valor booleano si el motor de diseño es compatible con
subplots_adjust
.
- propiedad colorbar_gridspec #
Devuelve un valor booleano si el motor de diseño crea barras de colores utilizando una especificación de cuadrícula.
- ejecutar ( fig ) [fuente] #
Realice constrained_layout y mueva y cambie el tamaño de los ejes en consecuencia.
- Parámetros :
- fig
Figure
para realizar el diseño.
- fig
- set ( * , h_pad = Ninguno , w_pad = Ninguno , hspace = Ninguno , wspace = Ninguno , rect = Ninguno ) [fuente] #
Configure los pads para constrained_layout.
- Parámetros :
- h_pad, flotador w_pad
Relleno alrededor de los elementos de los ejes en unidades normalizadas por figuras. Predeterminado a
rcParams["figure.constrained_layout.h_pad"]
(predeterminado:0.04167
) yrcParams["figure.constrained_layout.w_pad"]
(predeterminado:0.04167
).- espacio h, espacio w flotante
Fracción de la figura a dedicar al espacio entre los ejes. Estos se distribuyen uniformemente entre los espacios entre los ejes. Un valor de 0,2 para un diseño de tres columnas tendría un espacio de 0,1 del ancho de la figura entre cada columna. Si h/wspace < h/w_pad, entonces se usan los pads en su lugar. Predeterminado a
rcParams["figure.constrained_layout.hspace"]
(predeterminado:0.02
) yrcParams["figure.constrained_layout.wspace"]
(predeterminado:0.02
).- tupla recta de 4 floats
Rectángulo en coordenadas de figura para realizar un diseño restringido en (izquierda, abajo, ancho, alto), cada uno de 0-1.
- clase matplotlib.layout_engine. LayoutEngine ( ** kwargs ) [fuente] #
Clase base para motores de diseño de Matplotlib.
Un motor de diseño se puede pasar a una figura en la instanciación o en cualquier momento con
set_layout_engine
. Una vez adjuntada a una figura, la función del motor de diseñoexecute
es llamada en el momento del dibujo pordraw
, lo que proporciona un gancho especial en el momento del dibujo.Nota
Sin embargo, tenga en cuenta que los motores de diseño afectan la creación de barras de colores, por lo
set_layout_engine
que debe llamarlos antes de crear cualquier barra de colores.Actualmente, hay dos propiedades de
LayoutEngine
las clases que se consultan mientras se manipula la figura:engine.colorbar_gridspec
diceFigure.colorbar
si hacer elejes usando el método gridspec (ver
colorbar.make_axes_gridspec
) o no (vercolorbar.make_axes
);
engine.adjust_compatible
dejaFigure.subplots_adjust
de serejecutar si no es compatible con el motor de diseño.
Para implementar una costumbre
LayoutEngine
:anular
_adjust_compatible
y_colorbar_gridspec
anular
LayoutEngine.set
para actualizar self._paramsanular
LayoutEngine.execute
con su implementación
- propiedad ajuste_compatible #
Devuelve un valor booleano si el motor de diseño es compatible con
subplots_adjust
.
- propiedad colorbar_gridspec #
Devuelve un valor booleano si el motor de diseño crea barras de colores utilizando una especificación de cuadrícula.
- clase matplotlib.layout_engine. PlaceHolderLayoutEngine ( ajuste_compatible , colorbar_gridspec , ** kwargs ) [fuente] #
Este motor de diseño no ajusta el diseño de la figura en absoluto.
El propósito de esto
LayoutEngine
es actuar como marcador de posición cuando el usuario elimina un motor de diseño para garantizarLayoutEngine
que no se pueda establecer un incompatible más adelante.- Parámetros :
- ajuste_compatible, colorbar_gridspec bool
Permita que PlaceHolderLayoutEngine refleje el comportamiento de cualquier motor de diseño que esté reemplazando.
- propiedad ajuste_compatible #
Devuelve un valor booleano si el motor de diseño es compatible con
subplots_adjust
.
- propiedad colorbar_gridspec #
Devuelve un valor booleano si el motor de diseño crea barras de colores utilizando una especificación de cuadrícula.
- clase matplotlib.layout_engine. TightLayoutEngine ( * , pad = 1.08 , h_pad = Ninguno , w_pad = Ninguno , rect = (0, 0, 1, 1) , ** kwargs ) [fuente] #
Implementa la
tight_layout
gestión de la geometría. Consulte la guía de diseño ajustado para obtener más información.Inicialice el motor tight_layout.
- Parámetros :
- flotador de almohadilla , 1.08
Relleno entre el borde de la figura y los bordes de las subtramas, como una fracción del tamaño de la fuente.
- h_pad, flotador w_pad
Relleno (alto/ancho) entre los bordes de subparcelas adyacentes. El valor predeterminado es pad .
- tupla recta (izquierda, abajo, derecha, arriba), por defecto: (0, 0, 1, 1).
rectángulo en coordenadas de figuras normalizadas en las que encajarán las subparcelas (incluidas las etiquetas).
- propiedad ajuste_compatible #
Devuelve un valor booleano si el motor de diseño es compatible con
subplots_adjust
.
- propiedad colorbar_gridspec #
Devuelve un valor booleano si el motor de diseño crea barras de colores utilizando una especificación de cuadrícula.
- ejecutar ( fig ) [fuente] #
Ejecute tight_layout.
Esto decide los parámetros de la subparcela dado el relleno que permitirá que las etiquetas de los ejes no queden cubiertas por otras etiquetas y ejes.
- Parámetros :
- fig
Figure
para realizar el diseño. - Ver también: `.figure.Figure.tight_layout` y `.pyplot.tight_layout`.
- fig