backend_template
#
Un backend completamente funcional, que no hace nada, diseñado como una plantilla para los escritores de backend. Es completamente funcional en el sentido de que puede seleccionarlo como backend, por ejemplo, con
import matplotlib
matplotlib.use("template")
y su programa se ejecutará (¡debería!) Sin errores, aunque no se produzca ningún resultado. Esto proporciona un punto de partida para los escritores de back-end; puede implementar métodos de dibujo de forma selectiva ( draw_path
,
draw_image
, etc.) y ver cómo su figura cobra vida lentamente en lugar de tener que realizar una implementación completa antes de obtener algún resultado.
Copie este archivo en un directorio fuera del árbol fuente de Matplotlib, en algún lugar donde Python pueda importarlo (agregando el directorio a su directorio sys.path
o empaquetándolo como un paquete normal de Python); si el backend es importable,
puede seleccionarlo usandoimport my.backend
import matplotlib
matplotlib.use("module://my.backend")
Si su backend implementa soporte para guardar cifras (es decir, tiene un print_xyz
método), puede registrarlo como el controlador predeterminado para un tipo de archivo determinado:
from matplotlib.backend_bases import register_backend
register_backend('xyz', 'my_backend', 'XYZ File Format')
...
plt.savefig("figure.xyz")
- matplotlib.backends.backend_template. FigureCanvas [fuente] #
alias de
FigureCanvasTemplate
- clase matplotlib.backends.backend_template. FigureCanvasTemplate ( figura = Ninguno ) [fuente] #
Bases:
FigureCanvasBase
El lienzo en el que se convierte la figura. Llama a los métodos draw e print fig, crea los renderizadores, etc.
Nota: Las plantillas de GUI querrán conectar eventos para presionar botones, mover el mouse y presionar teclas a funciones que llamen a los métodos de clase base button_press_event, button_release_event, motion_notify_event, key_press_event y key_release_event. Vea las implementaciones de los backends interactivos para ver ejemplos.
- Atributos :
- figura
matplotlib.figure.Figure
Una instancia de figura de alto nivel
- figura
- dibujar ( ) [fuente] #
Dibuja la figura usando el renderizador.
Es importante que este método realmente recorra el árbol del artista, incluso si no se produce una salida, porque esto activará el trabajo diferido (como límites de cálculo, límites automáticos y valores de marca) al que los usuarios pueden querer acceder antes de guardar en el disco.
- filetypes = {'eps': ' Postscript encapsulado ', 'foo': 'Mi formato Foo mágico ', 'jpeg': 'Grupo conjunto de expertos en fotografía ', 'jpg': 'Grupo conjunto de expertos en fotografía ', 'pdf': ' Formato de documento portátil ', 'pgf': ' Código PGF para LaTeX', 'png': ' Gráficos de red portátiles ', 'ps': 'Postscript', 'raw': 'Mapa de bits RGBA sin procesar ', 'rgba': 'Mapa de bits RGBA sin procesar ', 'svg': 'Gráficos vectoriales escalables ', 'svgz': 'Gráficos vectoriales escalables ', 'tif': 'Formato de archivo de imagen etiquetado ', 'tiff': 'Formato de archivo de imagen etiquetado ', 'webp': ' Formato de imagen WebP '} #
- get_default_filetype ( ) [fuente] #
Devuelve el formato de archivo savefig predeterminado como se especifica en
rcParams["savefig.format"]
(predeterminado:'png'
).La cadena devuelta no incluye un punto. Este método se anula en los backends que solo admiten un único tipo de archivo.
- manager_class [fuente] #
alias de
FigureManagerTemplate
- print_foo ( nombre de archivo , * argumentos , ** kwargs ) [fuente] #
Escriba el formato foo.
Este método normalmente se llama vía
Figure.savefig
yFigureCanvasBase.print_figure
, que se encargan de establecer el color de la cara, el color del borde y los ppp de la figura en los valores de salida deseados, y los restaurará a los valores originales. Por lo tanto,print_foo
no necesita manejar estos ajustes.
- matplotlib.backends.backend_template. Gestor de figuras [fuente] #
alias de
FigureManagerTemplate
- clase matplotlib.backends.backend_template. FigureManagerTemplate ( lienzo , número ) [fuente] #
Bases:
FigureManagerBase
Clase de ayuda para el modo pyplot, envuelve todo en un paquete ordenado.
Para backends no interactivos, la clase base es suficiente.
- clase matplotlib.backends.backend_template. GraphicsContextTemplate [fuente] #
Bases:
GraphicsContextBase
El contexto de gráficos proporciona el color, los estilos de línea, etc. Consulte los backends cairo y postscript para ver ejemplos de asignación de atributos de contexto de gráficos (estilos de tapa, estilos de unión, anchos de línea, colores) a un backend en particular. En el cairo, esto se hace envolviendo un objeto cairo.Context y reenviando las llamadas apropiadas a él usando estilos de mapeo de diccionario para constantes gdk. En Postscript, todo el trabajo lo realiza el renderizador, asignando estilos de línea a las llamadas de Postscript.
Si es más apropiado hacer el mapeo en el nivel del renderizador (como en el backend de postscript), no necesita anular ninguno de los métodos de GC. Si es más apropiado envolver una instancia (como en el backend de cairo) y hacer el mapeo aquí, deberá anular varios de los métodos de configuración.
El GraphicsContext base almacena colores como una tupla RGB en el intervalo de la unidad, por ejemplo, (0.5, 0.0, 1.0). Es posible que deba asignar esto a los colores apropiados para su backend.
- clase matplotlib.backends.backend_template. RendererTemplate ( dpi ) [fuente] #
Bases:
RendererBase
El renderizador maneja las operaciones de dibujo/renderizado.
Esta es una clase mínima de no hacer nada que se puede usar para comenzar a escribir un nuevo backend. Consulte
backend_bases.RendererBase
para la documentación de los métodos.- dibujar_imagen ( gc , x , y , im ) [fuente] #
Dibujar una imagen RGBA.
- Parámetros :
- gc
GraphicsContextBase
Un contexto gráfico con información de recorte.
- x escalar
La distancia en unidades físicas (es decir, puntos o píxeles) desde el lado izquierdo del lienzo.
- y escalar
La distancia en unidades físicas (es decir, puntos o píxeles) desde la parte inferior del lienzo.
- im (N, M, 4) como una matriz de np.uint8
Una matriz de píxeles RGBA.
- transformar
matplotlib.transforms.Affine2DBase
Si y solo si el backend concreto se escribe de tal forma que
option_scale_image
devuelve , se puede pasarTrue
una transformación afín (es decir, anAffine2DBase
) a . El vector de traducción de la transformación se da en unidades físicas (es decir, puntos o píxeles). Tenga en cuenta que la transformación no anula x e y , y debe aplicarse antes de traducir el resultado por x e y (esto se puede lograr agregando x e y al vector de traducción definido por transform ).draw_image
- gc
- dibujar_ruta ( gc , ruta , transformar , rgbFace = Ninguno ) [fuente] #
Dibuja una
Path
instancia usando la transformación afín dada.
- dibujar_texto ( gc , x , y , s , prop , angle , ismath = False , mtext = None ) [fuente] #
Dibuja una instancia de texto.
- Parámetros :
- gc
GraphicsContextBase
El contexto gráfico.
- x flotador
La ubicación x del texto en las coordenadas de visualización.
- flotas _
La ubicación y de la línea de base del texto en las coordenadas de visualización.
- calle s
La cadena de texto.
- apuntalar
matplotlib.font_manager.FontProperties
Las propiedades de la fuente.
- ángulo de flotación
El ángulo de rotación en grados en sentido contrario a las agujas del reloj.
- textom
matplotlib.text.Text
El objeto de texto original que se representará.
- gc
notas
Nota para los implementadores de back-end:
Cuando intenta determinar si ha acertado con el cuadro delimitador (que es lo que permite que el diseño/alineación del texto funcione correctamente), es útil cambiar la línea en text.py:
if 0: bbox_artist(self, renderer)
a si 1, y luego el cuadro delimitador real se trazará junto con su texto.
- flipy ( ) [fuente] #
Devuelve si los valores de y aumentan de arriba hacia abajo.
Tenga en cuenta que esto solo afecta el dibujo de textos.
- get_canvas_width_height ( ) [fuente] #
Devuelve el ancho y la altura del lienzo en las coordenadas de visualización.
- get_text_width_height_descent ( s , prop , ismath ) [fuente] #
Obtenga el ancho, la altura y el descenso (desplazamiento desde la parte inferior hasta la línea de base), en coordenadas de visualización, de la cadena s con prop .
FontProperties
- new_gc ( ) [fuente] #
Devolver una instancia de un
GraphicsContextBase
.
- points_to_pixels ( puntos ) [fuente] #
Convierte puntos a unidades de visualización.
Debe anular esta función (a menos que su backend no tenga un dpi, por ejemplo, postscript o svg). Algunos sistemas de imágenes asumen algún valor de píxeles por pulgada:
points to pixels = points * pixels_per_inch/72 * dpi/72
- Parámetros :
- puntos flotantes o en forma de matriz
un flotador o una matriz numpy de flotadores
- Devoluciones :
- Puntos convertidos en píxeles