Las leyendas son esenciales para una visualización de datos clara, pero a veces saturan la gráfica. Matplotlib ofrece varias maneras de gestionar las leyendas, permitiendo eliminarlas por completo o simplemente ocultarlas para obtener visuales más limpios. Esta guía explora cuatro técnicas efectivas.
Tabla de Contenidos
- Eliminando la Leyenda Directamente
- Ocultando la Leyenda
- Prevenir la Creación de la Leyenda
- Eliminando la Leyenda mediante Asignación de Atributo
1. Eliminando la Leyenda Directamente
Este enfoque utiliza matplotlib.axes.Axes.get_legend().remove()
para eliminar la leyenda después de que se ha creado. Es sencillo y no deja rastro.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Línea 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Línea 2')
legend = ax.legend() # Crea la leyenda
legend.remove() # La elimina
plt.show()
2. Ocultando la Leyenda
matplotlib.axes.Axes.get_legend().set_visible(False)
proporciona más control. La leyenda permanece en memoria, permitiendo mostrarla más tarde usando set_visible(True)
.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Línea 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Línea 2')
legend = ax.legend()
legend.set_visible(False)
plt.show()
3. Prevenir la Creación de la Leyenda
El método más eficiente es prevenir la generación de la leyenda. Use label='noleyenda'
(o cualquier etiqueta no usada) dentro de la función plot()
.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='noleyenda')
ax.plot([1, 2, 3], [7, 8, 9], label='noleyenda')
plt.show()
4. Eliminando la Leyenda mediante Asignación de Atributo
Estableciendo directamente el atributo legend_
del objeto Axes a None
se elimina cualquier leyenda existente y se previene la creación futura.
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [4, 5, 6], label='Línea 1')
ax.plot([1, 2, 3], [7, 8, 9], label='Línea 2')
ax.legend_ = None
plt.show()
Elegir el método correcto depende de sus necesidades. Para la eliminación inmediata, los métodos 1 y 4 son eficientes. Para una posible re-visualización, el método 2 es el mejor. Prevenir la creación (método 3) es óptimo cuando se sabe que una leyenda es innecesaria.