wordpress

How to Customize Legends with Matplotlib: Methods for Personalizing

1. Cambiar la ubicación de la leyenda

La leyenda en una gráfica es una parte importante para comprender la información presentada. Matplotlib ofrece diferentes métodos para personalizar la ubicación de la leyenda en la gráfica. La función legend() se utiliza para crear la leyenda y se puede utilizar el parámetro loc para especificar la ubicación. Los valores comunes para loc son:

  • ‘best’: coloca la leyenda en la mejor ubicación posible, evitando superponerse con los elementos de la gráfica.
  • ‘upper right’: coloca la leyenda en la esquina superior derecha de la gráfica.
  • ‘upper left’: coloca la leyenda en la esquina superior izquierda de la gráfica.
  • ‘lower right’: coloca la leyenda en la esquina inferior derecha de la gráfica.
  • ‘lower left’: coloca la leyenda en la esquina inferior izquierda de la gráfica.
  • ‘right’: coloca la leyenda en el lado derecho de la gráfica.
  • ‘center left’: coloca la leyenda en el lado izquierdo de la gráfica, centrada verticalmente.
  • ‘center right’: coloca la leyenda en el lado derecho de la gráfica, centrada verticalmente.
  • ‘center’: coloca la leyenda en el centro de la gráfica.

Por ejemplo, para colocar la leyenda en la esquina superior derecha de la gráfica, se puede utilizar el siguiente código:

Recomendado:  How to Change the legend Position in Matplotlib - Quick and Easy Guide

«`python
import matplotlib.pyplot as plt

plt.plot([1, 2, 3], [4, 5, 6], label=’Línea 1′)
plt.plot([1, 2, 3], [7, 8, 9], label=’Línea 2′)

plt.legend(loc=’upper right’)

plt.show()
«`

Esto colocará la leyenda en la esquina superior derecha de la gráfica.

2. Cambiar el tamaño y el estilo de la fuente

La apariencia de la fuente en la leyenda también se puede personalizar. Matplotlib proporciona varios métodos para cambiar el tamaño y el estilo de la fuente en la leyenda. El parámetro prop se puede utilizar en la función legend() para especificar el tamaño y el estilo de la fuente.

Por ejemplo, para cambiar el tamaño de la fuente a 12 y el estilo a cursiva, se puede utilizar el siguiente código:

«`python
import matplotlib.pyplot as plt

plt.plot([1, 2, 3], [4, 5, 6], label=’Línea 1′)
plt.plot([1, 2, 3], [7, 8, 9], label=’Línea 2′)

plt.legend(prop={‘size’: 12, ‘style’: ‘italic’})

plt.show()
«`

Esto cambiará el tamaño de la fuente a 12 y el estilo a cursiva en la leyenda.

3. Cambiar el color de fondo y el borde de la leyenda

Además de cambiar la ubicación y la apariencia de la fuente, también se puede personalizar el color de fondo y el borde de la leyenda. La función legend() tiene los parámetros facecolor y edgecolor que se pueden utilizar para cambiar el color de fondo y el borde de la leyenda, respectivamente.

Por ejemplo, para cambiar el color de fondo a amarillo y el color del borde a negro, se puede utilizar el siguiente código:

«`python
import matplotlib.pyplot as plt

plt.plot([1, 2, 3], [4, 5, 6], label=’Línea 1′)
plt.plot([1, 2, 3], [7, 8, 9], label=’Línea 2′)

Recomendado:  Inconsistent use of tabs and spaces in indentation: Best practices

plt.legend(facecolor=’yellow’, edgecolor=’black’)

plt.show()
«`

Esto cambiará el color de fondo a amarillo y el color del borde a negro en la leyenda.

4. Agregar un título a la leyenda

En algunas ocasiones, puede ser útil agregar un título a la leyenda para proporcionar más información sobre los elementos representados. Matplotlib permite agregar un título a la leyenda utilizando la función legend() y el parámetro title.

Por ejemplo, para agregar el título «Leyenda» a la leyenda, se puede utilizar el siguiente código:

«`python
import matplotlib.pyplot as plt

plt.plot([1, 2, 3], [4, 5, 6], label=’Línea 1′)
plt.plot([1, 2, 3], [7, 8, 9], label=’Línea 2′)

plt.legend(title=’Leyenda’)

plt.show()
«`

Esto agregará el título «Leyenda» a la leyenda.

5. Ocultar elementos de la leyenda

En algunas ocasiones, puede ser necesario ocultar elementos específicos de la leyenda. Matplotlib proporciona la función legend() con el parámetro handles que se puede utilizar para especificar qué elementos se deben mostrar en la leyenda.

Por ejemplo, para ocultar el segundo elemento de la leyenda, se puede utilizar el siguiente código:

«`python
import matplotlib.pyplot as plt

line1, = plt.plot([1, 2, 3], [4, 5, 6], label=’Línea 1′)
line2, = plt.plot([1, 2, 3], [7, 8, 9], label=’Línea 2′)

plt.legend(handles=[line1])

plt.show()
«`

Esto mostrará solo el primer elemento en la leyenda y ocultará el segundo elemento.

6. Cambiar el orden de los elementos en la leyenda

En algunas ocasiones, puede ser necesario cambiar el orden en el que se muestran los elementos en la leyenda. Matplotlib permite cambiar el orden utilizando la función legend() y el parámetro handles.

Por ejemplo, para cambiar el orden de los elementos en la leyenda, se puede utilizar el siguiente código:

Recomendado:  Flatten() vs Ravel() Numpy Functions: Understanding the Difference

«`python
import matplotlib.pyplot as plt

line1, = plt.plot([1, 2, 3], [4, 5, 6], label=’Línea 1′)
line2, = plt.plot([1, 2, 3], [7, 8, 9], label=’Línea 2′)

plt.legend(handles=[line2, line1])

plt.show()
«`

Esto cambiará el orden de los elementos en la leyenda, mostrando primero el segundo elemento y luego el primer elemento.

7. Personalizar los marcadores y líneas de la leyenda

Matplotlib permite personalizar los marcadores y las líneas en la leyenda para que coincidan con los elementos de la gráfica. La función legend() tiene el parámetro handlelength que se puede utilizar para especificar la longitud de los marcadores en la leyenda.

Por ejemplo, para cambiar la longitud de los marcadores en la leyenda a 2, se puede utilizar el siguiente código:

«`python
import matplotlib.pyplot as plt

line1, = plt.plot([1, 2, 3], [4, 5, 6], label=’Línea 1′)
line2, = plt.plot([1, 2, 3], [7, 8, 9], label=’Línea 2′)

plt.legend(handles=[line1, line2], handlelength=2)

plt.show()
«`

Esto cambiará la longitud de los marcadores en la leyenda a 2.

8. Crear una leyenda personalizada

En algunos casos, puede ser necesario crear una leyenda personalizada con elementos que no están presentes en la gráfica. Matplotlib permite crear una leyenda personalizada utilizando la función legend() y el parámetro handles.

Por ejemplo, para crear una leyenda personalizada con un marcador cuadrado y una línea punteada, se puede utilizar el siguiente código:

«`python
import matplotlib.pyplot as plt
import matplotlib.patches as mpatches
import matplotlib.lines as mlines

square = mpatches.Patch(color=’red’, label=’Cuadrado’)
dotted_line = mlines.Line2D([], [], linestyle=’–‘, color=’blue’, label=’Línea punteada’)

plt.legend(handles=[square, dotted_line])

plt.show()
«`

Esto creará una leyenda personalizada con un marcador cuadrado y una línea punteada.

Author

osceda@hotmail.com

Leave a comment

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *