2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Matplotlib

Tutorial Matplotlib: Títulos, etiquetas y leyenda y límites

Domina la personalización de gráficos en Matplotlib. Aprende a añadir títulos, etiquetas, leyendas y ajustar límites para una visualización de datos clara y efectiva.

Aprende Matplotlib GRATIS y certifícate

Títulos con Matplotlib

En Matplotlib, los títulos son una parte fundamental para la personalización de gráficos, ya que permiten identificar y describir el contenido de un gráfico de manera clara. Para añadir un título a una gráfica, se utiliza la función set_title() del objeto Axes. Esta función ofrece múltiples opciones para ajustar el estilo y la posición del título.

La sintaxis básica para añadir un título es:

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot([1, 2, 3, 4], [10, 20, 25, 30])
ax.set_title("Título del gráfico")
plt.show()

En este ejemplo, set_title() establece "Título del gráfico" como el título de la gráfica. Sin embargo, Matplotlib permite una personalización más avanzada a través de parámetros opcionales que se pueden pasar a esta función.

El resultado visual sería el siguiente:

  • Fuente y tamaño: Se puede personalizar la fuente y el tamaño del título utilizando el parámetro fontdict. Este es un diccionario que puede incluir claves como fontsize, fontweight, entre otras.
ax.set_title("Título del gráfico", fontdict={'fontsize': 14, 'fontweight': 'bold'})

  • Posición del título: El parámetro loc permite especificar la posición del título. Las opciones incluyen 'center', 'left', y 'right'.
ax.set_title("Título del gráfico", loc='left')

  • Color y estilo: Además del tamaño y la posición, se puede cambiar el color y aplicar estilos al título con parámetros adicionales como color y style.
ax.set_title("Título del gráfico", color='red', style='italic')

  • Ajuste de márgenes: Para ajustar la cantidad de espacio entre el título y la gráfica, se puede utilizar el parámetro pad, que especifica el espacio en puntos.
ax.set_title("Título del gráfico", pad=20)

  • Usar LaTeX para expresiones matemáticas: Si se requiere incluir expresiones matemáticas en el título, Matplotlib permite el uso de sintaxis LaTeX al envolver la expresión entre signos de dólar.
ax.set_title(r"Expresión matemática: $E=mc^2$")

Estas opciones proporcionan un control detallado sobre cómo se presentan los títulos en los gráficos, permitiendo una personalización que se adapta a las necesidades específicas de presentación de datos. Es importante explorar la documentación de Matplotlib para conocer todas las posibilidades y opciones avanzadas disponibles.

Etiquetas, anotaciones y texto con matplotlib

En Matplotlib, las etiquetas y anotaciones son esenciales para proporcionar contexto adicional a los gráficos. Las etiquetas se utilizan principalmente para los ejes, mientras que las anotaciones y el texto son útiles para resaltar puntos específicos o áreas de interés en una gráfica.

Para añadir etiquetas a los ejes, se utilizan las funciones set_xlabel() y set_ylabel() del objeto Axes. Estas funciones permiten especificar el texto de las etiquetas y ofrecen opciones para personalizar su apariencia.

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot([1, 2, 3, 4], [10, 20, 25, 30])
ax.set_xlabel("Eje X")
ax.set_ylabel("Eje Y")
plt.show()

Así se vería la gráfica:

En este ejemplo, set_xlabel() y set_ylabel() añaden etiquetas a los ejes X e Y respectivamente. Se puede personalizar el tamaño de la fuente, el color y el estilo de las etiquetas utilizando un diccionario de fuentes similar al de los títulos.

Para añadir anotaciones, se utiliza la función annotate(). Esta función es muy flexible y permite colocar texto en cualquier parte del gráfico, con la opción de añadir flechas o líneas que conecten el texto con un punto específico de la gráfica.

ax.annotate('Punto importante', xy=(3, 25), xytext=(3, 30),
            arrowprops=dict(facecolor='black', shrink=0.05))

En este ejemplo, annotate() coloca el texto "Punto importante" cerca del punto (3, 25) en la gráfica, con una flecha que lo conecta al punto especificado. El parámetro arrowprops permite personalizar la apariencia de la flecha.

Para añadir texto libre en cualquier parte de la gráfica, se utiliza la función text(), que coloca texto en una posición absoluta dentro del sistema de coordenadas de la gráfica.

ax.text(2, 15, "Texto libre", fontsize=12, color='blue')

El uso de text() es útil para añadir explicaciones o datos adicionales dentro de la gráfica que no están directamente relacionados con un punto específico.

Matplotlib también permite incluir texto con formato LaTeX para expresar fórmulas matemáticas en las etiquetas y anotaciones, utilizando la misma sintaxis que para los títulos.

ax.set_xlabel(r"Eje X ($\mu m$)")
ax.annotate(r'$\alpha > \beta$', xy=(1.2, 10), fontsize=12)

Estas herramientas de Matplotlib para trabajar con etiquetas, anotaciones y texto proporcionan un control detallado sobre cómo se presenta la información adicional en los gráficos, permitiendo que los datos se comuniquen de manera más efectiva y precisa.

Leyenda con Matplotlib

En Matplotlib, la leyenda es un componente crucial para la interpretación correcta de un gráfico, especialmente cuando se manejan múltiples series de datos. 

La función legend() del objeto Axes se utiliza para añadir y personalizar leyendas. Esta función puede configurarse para mostrar automáticamente las etiquetas de los datos o personalizarse con diversos parámetros.

Para mostrar una leyenda básica, cada serie de datos debe incluir un identificador mediante el argumento label en la función de trazado, como plot(). Posteriormente, se llama a legend() para generar la leyenda:

import matplotlib.pyplot as plt

fig, ax = plt.subplots()
ax.plot([1, 2, 3, 4], [10, 20, 25, 30], label='Serie 1')
ax.plot([1, 2, 3, 4], [30, 25, 20, 15], label='Serie 2')
ax.legend()
plt.show()

El gráfico generado es el siguiente:

En este ejemplo, la función legend() utiliza las etiquetas proporcionadas en label para cada serie de datos y genera una leyenda que las identifica.

Para personalizar la ubicación de la leyenda, se puede utilizar el parámetro loc, que acepta tanto cadenas como enteros para definir posiciones predefinidas o específicas dentro del gráfico:

ax.legend(loc='upper right')

Además de la ubicación, es posible personalizar otros aspectos de la leyenda, como el tamaño de la fuente y el número de columnas, ajustando parámetros adicionales:

ax.legend(loc='upper right', fontsize='small', ncol=2)

La personalización de la leyenda también permite ajustar el fondo y el borde. Por ejemplo, frameon=False elimina el cuadro alrededor de la leyenda, y shadow=True añade una sombra:

ax.legend(frameon=False, shadow=True)

Para modificar el título de la leyenda o añadir uno, se puede utilizar el parámetro title:

ax.legend(title='Datos de ejemplo')

En situaciones donde se requiere una leyenda más detallada, se pueden especificar manualmente los identificadores y descripciones mediante handles y labels, proporcionando un control más fino sobre el contenido de la leyenda:

handles, labels = ax.get_legend_handles_labels()
ax.legend(handles, labels, loc='upper left')

Esta técnica es útil cuando se necesita modificar o filtrar elementos de la leyenda sin alterar las etiquetas de los datos.

En resumen, la función legend() en Matplotlib es altamente flexible y permite una personalización detallada para adaptarse a las necesidades de presentación de datos, mejorando la claridad y comprensión de los gráficos.

Aprende Matplotlib GRATIS online

Ejercicios de esta lección Títulos, etiquetas y leyenda y límites

Evalúa tus conocimientos de esta lección Títulos, etiquetas y leyenda y límites con nuestros retos de programación de tipo Test, Puzzle, Código y Proyecto con VSCode, guiados por IA.

Evaluación código global

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Código

Integración de Matplotlib con Numpy

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Test

Evaluación test global

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Test

Análisis mercado de criptomonedas

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Proyecto

Gráficos univariantes

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Código

Gráficos multivariantes

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Código

Conceptos básicos de Matplotlib

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Puzzle

Análisis de ventas de videojuegos

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Proyecto

Temas predefinidos, colores y estilos

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Código

Subplots y grillas

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Código

Gráficos bivariantes

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Código

Integración de Matplotlib con Pandas

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Test

Visualización de datos dataset iris

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Proyecto

Introducción e instalación de Matplotlib

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Test

Ajuste de ejes en matplotlib

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Puzzle

Integración de Matplotlib con Seaborn

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Test

Títulos, etiquetas y leyenda y límites

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/
Test

Todas las lecciones de Matplotlib

Accede a todas las lecciones de Matplotlib y aprende con ejemplos prácticos de código y ejercicios de programación con IDE web sin instalar nada.

Introducción E Instalación De Matplotlib

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Introducción Y Entorno

Conceptos Básicos De Matplotlib

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Introducción Y Entorno

Gráficos Univariantes

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Creación De Gráficos

Gráficos Bivariantes

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Creación De Gráficos

Gráficos Multivariantes

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Creación De Gráficos

Títulos, Etiquetas Y Leyenda Y Límites

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Personalización De Gráficos

Temas Predefinidos, Colores Y Estilos

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Personalización De Gráficos

Ejes, Ajustes De Ejes

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Personalización De Gráficos

Subplots Y Grillas

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Personalización De Gráficos

Integración De Matplotlib Con Numpy

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Integraciones

Integración De Matplotlib Con Pandas

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Integraciones

Integración De Matplotlib Con Seaborn

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Integraciones

Evaluación Test De Conocimientos

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Evaluación Matplotlib

Evaluación Conocimiento De Código

2022-09-27T22:26:51.030457 image/svg+xml Matplotlib v3.6.0, https://matplotlib.org/

Evaluación Matplotlib

Accede GRATIS a Matplotlib y certifícate

Certificados de superación de Matplotlib

Supera todos los ejercicios de programación del curso de Matplotlib y obtén certificados de superación para mejorar tu currículum y tu empleabilidad.

Objetivos de aprendizaje de esta lección

1. Comprender cómo añadir y personalizar títulos en gráficos de Matplotlib.

2. Aprender a integrar etiquetas y anotaciones de texto de manera efectiva.

3. Dominar la creación y configuración de leyendas para gráficos complejos.

4. Controlar los límites de los ejes para ajustar la visualización de los datos.

5. Aplicar técnicas avanzadas de personalización para mejorar la comunicación visual de los gráficos.