Ctrl+K
Logo image Logo image
  • Tipos de parcela
  • Ejemplos
  • Tutoriales
  • Referencia de la API
  • Guía de usuario
  • contribuyendo
  • Plot types
  • Examples
  • Tutorials
  • Reference
  • User guide
  • Develop
  • Release notes

Section Navigation

  • Líneas, barras y marcadores
    • Demostración de color de barra
    • Demostración de etiqueta de barra
    • gráfico de barras apiladas
    • Gráfico de barras agrupadas con etiquetas
    • gráfico de barras horizontales
    • bar roto
    • CapStyle
    • Trazado de variables categóricas
    • Trazado de la coherencia de dos señales
    • Demostración de CSD
    • Curva con banda de error
    • Selección de límite de barra de error
    • Submuestreo de barra de error
    • Demostración de EventCollection
    • Demostración de gráfico de eventos
    • polígono relleno
    • Rellenar entre y alfa
    • Llenar el área entre líneas
    • Demostración de relleno de Betweenx
    • Histogramas llenos de sombreado
    • Gráfico de barras con gradientes
    • Gráfico de sombrero
    • Distribución discreta como gráfico de barras horizontales
    • JoinStyle
    • Personalización de estilos de línea discontinua
    • Líneas con un efecto de ruta marcado
    • Estilos de línea
    • Referencia de marcador
    • Demostración de Markevery
    • Trazado de valores enmascarados y NaN
    • Líneas multicolores
    • Asignación de propiedades de marcador a datos multivariados
    • Psd Demostración
    • Gráficos de dispersión con símbolos personalizados
    • Demostración de dispersión2
    • Diagrama de dispersión con histogramas
    • Dispersión enmascarada
    • Ejemplos de marcadores
    • Diagramas de dispersión con una leyenda
    • Trama sencilla
    • Usando span_where
    • Representaciones de espectro
    • Diagramas de pila y diagramas de flujo
    • Demostración de escaleras
    • Parcela de tallo
    • Demostración de pasos
    • Creación de una línea de tiempo con líneas, fechas y texto
    • líneas h y líneas v
    • Demostración de correlación cruzada y automática
  • Imágenes, contornos y campos.
    • Transformación afín de una imagen
    • púas de viento
    • Código de barras
    • Ajuste interactivo del rango del mapa de colores
    • Normalizaciones de mapa de colores
    • Normalizaciones de mapa de colores SymLogNorm
    • Máscara de esquina de contorno
    • Demostración de contorno
    • Imagen de contorno
    • Demostración de etiqueta de contorno
    • Demostración de contorno
    • Sombreado de contornos
    • Escala de color de contorno y registro
    • Contorno del espacio de solución de optimizaciones
    • Demostración de BboxImagen
    • Demostración de Figimage
    • Creación de mapas de calor anotados
    • Suavizado de imágenes
    • Recortar imágenes con parches
    • Imagen de demostración
    • Imagen enmascarada
    • Imagen no uniforme
    • Combinar transparencia con color en imágenes 2D
    • Modificar el formateador de coordenadas
    • Interpolaciones para imshow
    • Gráfico de contorno de datos espaciados irregularmente
    • Imágenes de capas
    • matshow
    • Imagen múltiple
    • Demostración de color
    • rejillas y sombreado pcolormesh
    • pcolormesh
    • diagrama de flujo
    • Demostración de malla cuádruple
    • Funciones avanzadas de carcaj y carcaj
    • Demostración simple de carcaj
    • Ejemplo de sombreado
    • Demostración de espectrograma
    • Demostraciones de espías
    • Demostración tricontorno
    • Tricontorno Liso Delaunay
    • Usuario Tricontour Smooth
    • Demostración trigradiente
    • Demostración de Triinterp
    • Demostración de Tripcolor
    • Demostración de triplot
    • Imagen de marca de agua
  • Subtramas, ejes y figuras
    • Alineación de etiquetas
    • Aspecto de la caja de ejes
    • Demostración de ejes
    • Controlar los límites de vista usando márgenes y sticky_edges
    • Accesorios de hachas
    • Efecto de zoom de ejes
    • Demostración de axhspan
    • Relación de aspecto de eje igual
    • Posición de la etiqueta del eje
    • Eje roto
    • Colocación de barras de colores
    • Subclases de figuras personalizadas
    • Cambiar el tamaño de los ejes con diseño restringido
    • Cambiar el tamaño de los ejes con un diseño ajustado
    • Diferentes escalas en los mismos ejes
    • Tamaño de la figura en diferentes unidades
    • Etiquetas de figuras: suptitle, supxlabel, supylabel
    • Crear subparcelas adyacentes
    • Proyecciones Geográficas
    • Combinar dos subparcelas usando subparcelas y GridSpec
    • Uso de Gridspec para hacer diseños de subparcelas de varias columnas/filas
    • Especificaciones de cuadrícula anidadas
    • Invertir ejes
    • Administrar múltiples figuras en pyplot
    • Eje secundario
    • Compartir límites de ejes y vistas
    • Eje compartido
    • Figura subfiguras
    • Múltiples subtramas
    • Espaciamientos y márgenes de las subparcelas
    • Creación de múltiples subtramas usando plt.subplots
    • Parcelas con diferentes escalas
    • Ejes de inserción de región de zoom
  • Estadísticas
    • Percentiles como gráfico de barras horizontales
    • Personalización del artista en diagramas de caja
    • Diagramas de caja con colores de relleno personalizados
    • diagramas de caja
    • Comparación de diagrama de caja y diagrama de violín
    • Función de cajón de diagrama de caja
    • Trazar una elipse de confianza de un conjunto de datos bidimensional
    • Personalización de la trama de violín
    • función de la barra de errores
    • Diferentes formas de especificar barras de error
    • Incluyendo límites superior e inferior en barras de error
    • Creando cuadros a partir de barras de error usando PatchCollection
    • Parcela en bins hexagonales
    • Histogramas
    • Uso de histogramas para trazar una distribución acumulativa
    • Algunas características de la función de histograma (hist)
    • Demostración de las diferentes configuraciones de histtype de la función de histograma
    • La función de histograma (hist) con múltiples conjuntos de datos
    • Producción de múltiples histogramas uno al lado del otro
    • Histograma de serie temporal
    • Conceptos básicos de la trama de violín
  • Gráficos circulares y polares
    • Gráfico circular básico
    • Pastel Demo2
    • barra de pastel
    • Gráficos circulares anidados
    • Etiquetado de un pastel y una rosquilla
    • Gráfico de barras en el eje polar
    • parcela polar
    • Leyenda polar
    • Diagrama de dispersión en el eje polar
  • Texto, etiquetas y anotaciones
    • Usar texto acentuado en Matplotlib
    • Etiqueta de ángulo invariable de escala
    • Anotación de parcelas
    • Demostración de flecha
    • Texto de ajuste automático
    • Componer leyendas personalizadas
    • Etiquetas de marca de fecha
    • Demostración de AnotationBbox
    • Usar un texto como ruta
    • Modo de rotación de texto
    • La diferencia entre \dfrac y \frac
    • Etiquetado de ticks usando notación de ingeniería
    • Referencia de estilo de flecha de anotación
    • Estilizar cuadros de texto
    • Demostración de la leyenda de la figura
    • Configuración de la familia de fuentes
    • Usando un archivo de fuente ttf en Matplotlib
    • Tabla de fuentes
    • Demostración de fuentes (estilo orientado a objetos)
    • Demostración de fuentes (argumentos de palabras clave)
    • Etiquetado de subparcelas
    • Leyenda usando etiquetas predefinidas
    • Demostración de leyenda
    • Artista dentro de un artista
    • Convertir textos en imágenes
    • Texto matemático
    • Ejemplos de texto matemático
    • familia de fuentes matemáticas
    • multilínea
    • Colocar cuadros de texto
    • Texto del arco iris
    • Fuentes STIX
    • Representación de ecuaciones matemáticas usando TeX
    • Alineación del texto
    • Controlando el estilo de texto y etiquetas usando un diccionario
    • Demostración de rotación de texto predeterminada
    • Rotación de texto relativa a la línea
    • Posicionamiento del título
    • Unicode menos
    • Prueba de referencia de Usetex
    • Usetex Fonteffects
    • Marca de agua de texto
  • pyplot
    • Alinear etiquetas y
    • Anotar Transformar
    • Anotar una trama
    • Anotación Polar
    • Control programático del ajuste de la subtrama
    • lineas infinitas
    • Demostración de diagrama de caja
    • garrapatas de dólar
    • Fig Hachas Personaliza Simple
    • Etiquetas de ejes simples
    • Adición de líneas a figuras
    • cadena de formato plot()
    • Pyplot Mathtext
    • Pyplot simple
    • Texto de gráfico de puntos
    • Pyplot tres
    • Pyplot dos subparcelas
    • Comandos de texto
    • Diseño de texto
  • Color
    • Demostración de color
    • Color por valor de y
    • Colores en el ciclo de propiedades por defecto
    • Barra de color
    • Referencia de mapa de colores
    • Creación de un mapa de colores a partir de una lista de colores
    • Lista de colores con nombre
  • formas y colecciones
    • guía de flecha
    • Referencia para artistas de Matplotlib
    • Colección Line, Poly y RegularPoly con ajuste de escala automático
    • Camino compuesto
    • delfines
    • mmm donas!!!
    • Colección Elipse
    • Demostración de elipse
    • Dibujar cajas de lujo
    • demostración de eclosión
    • Referencia de estilo de sombreado
    • Colección de línea
    • Círculos, Cuñas y Polígonos
    • objeto PathPatch
    • Curva de Bézier
    • Gráfico de dispersión
  • hojas de estilo
    • Hoja de estilo Métodos Bayesianos para Hackers
    • Hoja de estilo de fondo oscuro
    • hoja de estilo FiveThirtyEight
    • hoja de estilo ggplot
    • hoja de estilo en escala de grises
    • Hoja de estilo de luz solarizada
    • Referencia de hojas de estilo
  • ejes_grid1
    • Flecha de dirección anclada
    • Divisor de ejes
    • Cuadrícula de ejes de demostración
    • Ejes Grid2
    • demostración de HBoxDivider
    • Mostrando canales RGB usando RGBAxes
    • Agregar una barra de colores a los ejes insertados
    • Barra de colores con AxesDivider
    • Controlar la posición y el tamaño de las barras de colores con los ejes insertados
    • Barras de colores por fila o por columna
    • Ejes con un tamaño físico fijo
    • Establecer un aspecto fijo en las celdas de ImageGrid
    • Demostración del localizador de recuadros
    • Localizador de recuadros Demo2
    • Haz espacio para ylabel usando axes_grid
    • parásito simple
    • parásito simple2
    • Histograma de dispersión (ejes localizables)
    • Artistas anclados simples
    • Divisor de ejes simples 1
    • Divisor de ejes simples 3
    • Cuadrícula de imagen simple
    • Cuadrícula de imágenes simple 2
    • Línea de eje simple4
    • Barra de colores simple
  • ejeartista
    • Dirección del eje
    • demostración de dirección_eje
    • Estilos de línea de eje
    • Demostración de cuadrícula curvilínea
    • Curva de demostraciónCuadrícula lineal2
    • Características de mpl_toolkits.axisartist.floating_axes
    • demostración de eje_flotante
    • Demostración de Parasite Axes
    • Demostración del eje parásito
    • Alineación de etiquetas
    • dirección de la etiqueta
    • Dirección del eje simple01
    • Dirección del eje simple03
    • Almohadilla de eje simple
    • Lomos personalizados con axisartist
    • Línea de eje simple
    • Línea de eje simple3
  • Escaparate
    • Anatomía de una figura.
    • Firefox
    • Integral como el área bajo una curva
    • Representación sombreada y potencia normalizada
    • Precios de las acciones durante 32 años
    • XKCD
  • Animación
    • Decadencia
    • Histograma animado
    • animación pyplot
    • La actualización de Bayes
    • El problema del doble péndulo
    • Imagen animada utilizando una lista precalculada de imágenes
    • captura de fotogramas
    • Pausar y reanudar una animación
    • Simulación de lluvia
    • Paseo aleatorio animado en 3D
    • Diagrama de línea animado
    • Oscilloscope
    • MATPLOTLIB DESENCADENADO
    • Decadencia
    • La actualización de Bayes
    • El problema del doble péndulo
    • Histograma animado
    • Simulación de lluvia
    • Paseo aleatorio animado en 3D
    • Diagrama de línea animado
    • Oscilloscope
    • MATPLOTLIB DESENCADENADO
    • Imagen animada utilizando una lista precalculada de imágenes
    • captura de fotogramas
  • Manejo de eventos
    • Cerrar evento
    • Eventos de movimiento y clic del mouse
    • Cursor de cruz
    • Navegador de datos
    • Figura/Ejes entran y salen de eventos
    • Funciones interactivas
    • Visor de cortes de imagen
    • Evento de pulsación de tecla
    • Demostración de lazo
    • Selección de leyenda
    • Espejo
    • Editor de rutas
    • Elija una demostración de evento
    • Elegir evento Demo2
    • Editor polivinílico
    • Apestar
    • Datos de remuestreo
    • Temporizadores
    • Demostración del evento Trifinder
    • Viewlims
    • Ampliar ventana
  • Misceláneas
    • Artistas anclados
    • Cambiar los colores de las líneas que se cruzan con un cuadro
    • Contorno manual
    • Informe de coordenadas
    • Proyección personalizada
    • Personalizar RC
    • filtro AGG
    • caja de cinta
    • Espiral de relleno
    • Demostración de Findobj
    • Indexación de fuentes
    • Propiedades de fuente
    • Construyendo histogramas usando Rectangles y PolyCollections
    • hipervínculos
    • Miniatura de la imagen
    • Trazar con palabras clave
    • logotipo de matplotlib
    • PDF de varias páginas
    • multiproceso
    • Gráfico de burbujas empaquetadas
    • Demostración de Patheffect
    • Imprimir salida estándar
    • Pythonic Matplotlib
    • Rasterización para gráficos vectoriales
    • Establecer y obtener propiedades
    • Línea de filtro SVG
    • Pastel de filtro SVG
    • Demostración de mesa
    • Efecto de ruta TickedStroke
    • transforma.offset_copy
    • Demostración de Zorder
  • Trazado 3D
    • Trazar datos 2D en un gráfico 3D
    • Demostración de gráficos de barras 3D
    • Crea gráficos de barras 2D en diferentes planos
    • Gráfico de superficie de caja 3D
    • Demuestra trazar curvas de contorno (nivel) en 3D
    • Demuestra el trazado de curvas de contorno (nivel) en 3D usando la opción extend3d
    • Proyectar perfiles de contorno en un gráfico
    • Contornos rellenos
    • Proyectar un contorno relleno en un gráfico
    • Sombreado personalizado en un gráfico de superficie 3D
    • barras de error 3D
    • Crear histograma 3D de datos 2D
    • Curva paramétrica
    • Atractor de Lorenz
    • Ejes 2D y 3D en la misma figura
    • Compensación automática de texto
    • Dibujar objetos planos en un gráfico 3D
    • Genere polígonos para llenar bajo el gráfico de líneas 3D
    • Tipos de proyección de tramas 3D
    • diagrama de carcaj 3D
    • Rotación de un gráfico 3D
    • diagrama de dispersión 3D
    • tallo 3D
    • Gráficos 3D como subgráficos
    • Superficie 3D (mapa de colores)
    • Superficie 3D (color sólido)
    • Superficie 3D (tablero de ajedrez)
    • Superficie 3D con coordenadas polares
    • Anotaciones de texto en 3D
    • Gráfico de contorno 3D triangular
    • Trazado triangular de contornos rellenos en 3D
    • Superficies 3D triangulares
    • Más superficies 3D triangulares
    • Planos de vista 3D primarios
    • vóxel 3D / trama volumétrica
    • Gráfico de vóxeles en 3D del logotipo numpy
    • Vóxel 3D/parcela volumétrica con colores rgb
    • Gráfico volumétrico/vóxel 3D con coordenadas cilíndricas
    • diagrama de estructura alámbrica 3D
    • Animación de un gráfico de estructura alámbrica 3D
    • Gráficos de estructura alámbrica 3D en una dirección
  • Escamas
    • Demostración de Asinh
    • Aspecto de registro
    • Escala personalizada
    • Barra de registro
    • Demostración de registro
    • Demostración de Logit
    • Explorando normalizaciones
    • Escamas
    • Eje de registro
    • Demostración de Symlog
  • Parcelas Especiales
    • sombreado
    • el cuarteto de anscombe
    • Diagramas de Hinton
    • diana del ventrículo izquierdo
    • resonancia magnética
    • RM con EEG
    • Gráfico de radar (también conocido como gráfico de araña o estrella)
    • La clase Sankey
    • Larga cadena de conexiones usando Sankey
    • Ciclo de potencia de Rankine
    • Diagrama SkewT-logP: uso de transformaciones y proyecciones personalizadas
    • Sombreado topográfico
  • espinas dorsales
    • Espinas centradas con flechas
    • Múltiples ejes Y con espinas
    • Colocación de la columna
    • espinas dorsales
    • Límites de lomo personalizados
    • espinas caídas
  • garrapatas
    • Configuración automática de posiciones de ticks
    • Centrado de etiquetas entre marcas
    • Etiquetado de marca de barra de color
    • Teletipo personalizado
    • Formateo de marcas de fecha usando ConciseDateFormatter
    • Fecha Demostración Convertir
    • Colocación de marcas de fecha usando reglas de recurrencia
    • Localizadores y formateadores de marca de fecha
    • Formateador de ticks personalizado para series temporales
    • Precisión de fechas y épocas
    • Marcas mayores y menores
    • El formateador de ticks predeterminado
    • Formateadores de ticks
    • Localizadores de garrapatas
    • Establecer etiquetas de marca de eje Y predeterminadas a la derecha
    • Establecer etiquetas de marca de una lista de valores
    • Mueva las etiquetas de marca del eje x a la parte superior
    • Rotación de etiquetas de marca personalizadas
    • Arreglando demasiadas garrapatas
  • Unidades
    • Anotación con unidades
    • Pruebas de artista
    • Barra de demostración con unidades
    • Gráfico de barras de grupo con unidades
    • Unidades Básicas
    • Elipse con unidades
    • prueba de evans
    • garrapatas en radianes
    • Pulgadas y Centimetros
    • manejo de unidades
  • Incrustación de Matplotlib en interfaces gráficas de usuario
    • Demostración de CanvasAgg
    • Incrustación en GTK3 con una barra de herramientas de navegación
    • Embebido en GTK3
    • Incrustación en GTK4 con una barra de herramientas de navegación
    • Embebido en GTK4
    • Incrustación en Qt
    • Incrustación en Tk
    • Incrustación en wx #2
    • Incrustación en wx #3
    • Incrustación en wx #4
    • Incrustación en wx #5
    • Incorporación de WebAgg
    • Demostración de Fourier WX
    • Hoja de cálculo GTK3
    • Hoja de cálculo GTK4
    • Texto matemático WX
    • Matplotlib con Glade 3
    • pyplot con GTK3
    • pyplot con GTK4
    • Histograma SVG
    • Información sobre herramientas SVG
    • Administrador de herramientas
    • Incrustación en un servidor de aplicaciones web (Flask)
    • Agregar un cursor en WX
  • Demostración de usuario
    • Caja Anclada04
    • Anotar Explicar
    • Anotar Simple01
    • Anotar Simple02
    • Anotar Simple03
    • Anotar Simple04
    • Anotar Coord01 simple
    • Anotar Coord02 simple
    • Anotar Coord03 simple
    • Anotar flecha de texto
    • Conectar Simple01
    • Estilos de conexión para anotaciones
    • Estilos de caja personalizados
    • demostración subplot2grid
    • Demostración de GridSpec
    • Especificaciones de cuadrícula anidadas
    • fuentes pgf
    • Preámbulo de PGF
    • Sistema de texto PGF
    • Anotación simple01
    • Leyenda simple01
    • Leyenda simple02
  • Widgets
    • Cursor anotado
    • Botones
    • Comprobar botones
    • Cursor
    • Selector de lazo
    • Menú
    • Cursor del ratón
    • multicursor
    • Seleccione índices de una colección usando el selector de polígonos
    • Selector de polígonos
    • Botones de radio
    • Umbral de una imagen con RangeSlider
    • Selectores de rectángulo y elipse
    • Deslizador
    • Ajuste de controles deslizantes a valores discretos
    • Selector de tramo
    • Caja de texto
  • Color

Nota

Haga clic aquí para descargar el código de ejemplo completo

Menú #

menú
import matplotlib.artist as artist
import matplotlib.patches as patches
import matplotlib.pyplot as plt
from matplotlib.transforms import IdentityTransform


class ItemProperties:
    def __init__(self, fontsize=14, labelcolor='black', bgcolor='yellow',
                 alpha=1.0):
        self.fontsize = fontsize
        self.labelcolor = labelcolor
        self.bgcolor = bgcolor
        self.alpha = alpha


class MenuItem(artist.Artist):
    padx = 5
    pady = 5

    def __init__(self, fig, labelstr, props=None, hoverprops=None,
                 on_select=None):
        super().__init__()

        self.set_figure(fig)
        self.labelstr = labelstr

        self.props = props if props is not None else ItemProperties()
        self.hoverprops = (
            hoverprops if hoverprops is not None else ItemProperties())
        if self.props.fontsize != self.hoverprops.fontsize:
            raise NotImplementedError(
                'support for different font sizes not implemented')

        self.on_select = on_select

        # Setting the transform to IdentityTransform() lets us specify
        # coordinates directly in pixels.
        self.label = fig.text(0, 0, labelstr, transform=IdentityTransform(),
                              size=props.fontsize)
        self.text_bbox = self.label.get_window_extent(
            fig.canvas.get_renderer())

        self.rect = patches.Rectangle((0, 0), 1, 1)  # Will be updated later.

        self.set_hover_props(False)

        fig.canvas.mpl_connect('button_release_event', self.check_select)

    def check_select(self, event):
        over, _ = self.rect.contains(event)
        if not over:
            return
        if self.on_select is not None:
            self.on_select(self)

    def set_extent(self, x, y, w, h, depth):
        self.rect.set(x=x, y=y, width=w, height=h)
        self.label.set(position=(x + self.padx, y + depth + self.pady/2))
        self.hover = False

    def draw(self, renderer):
        self.rect.draw(renderer)
        self.label.draw(renderer)

    def set_hover_props(self, b):
        props = self.hoverprops if b else self.props
        self.label.set(color=props.labelcolor)
        self.rect.set(facecolor=props.bgcolor, alpha=props.alpha)

    def set_hover(self, event):
        """
        Update the hover status of event and return whether it was changed.
        """
        b, _ = self.rect.contains(event)
        changed = (b != self.hover)
        if changed:
            self.set_hover_props(b)
        self.hover = b
        return changed


class Menu:
    def __init__(self, fig, menuitems):
        self.figure = fig

        self.menuitems = menuitems

        maxw = max(item.text_bbox.width for item in menuitems)
        maxh = max(item.text_bbox.height for item in menuitems)
        depth = max(-item.text_bbox.y0 for item in menuitems)

        x0 = 100
        y0 = 400

        width = maxw + 2*MenuItem.padx
        height = maxh + MenuItem.pady

        for item in menuitems:
            left = x0
            bottom = y0 - maxh - MenuItem.pady

            item.set_extent(left, bottom, width, height, depth)

            fig.artists.append(item)
            y0 -= maxh + MenuItem.pady

        fig.canvas.mpl_connect('motion_notify_event', self.on_move)

    def on_move(self, event):
        if any(item.set_hover(event) for item in self.menuitems):
            self.figure.canvas.draw()


fig = plt.figure()
fig.subplots_adjust(left=0.3)
props = ItemProperties(labelcolor='black', bgcolor='yellow',
                       fontsize=15, alpha=0.2)
hoverprops = ItemProperties(labelcolor='white', bgcolor='blue',
                            fontsize=15, alpha=0.2)

menuitems = []
for label in ('open', 'close', 'save', 'save as', 'quit'):
    def on_select(item):
        print('you selected %s' % item.labelstr)
    item = MenuItem(fig, label, props=props, hoverprops=hoverprops,
                    on_select=on_select)
    menuitems.append(item)

menu = Menu(fig, menuitems)
plt.show()

Download Python source code: menu.py

Download Jupyter notebook: menu.ipynb

Galería generada por Sphinx-Gallery

Mostrar fuente

© Copyright 2002–2012 John Hunter, Darren Dale, Eric Firing, Michael Droettboom and the Matplotlib development team; 2012–2022 The Matplotlib development team.

Created using Sphinx 5.1.1.