¿Cómo eliminar la leyenda en Matplotlib?

Matplotlib es una de las bibliotecas de visualización de datos más populares presentes en Python . Usando esta biblioteca matplotlib , si queremos visualizar más de una sola variable, podríamos querer explicar qué representa cada variable. Para este propósito, hay una función llamada legend() presente en la biblioteca matplotlib. Esta leyenda es una pequeña área en el gráfico que describe lo que representa cada variable.

Para eliminar la leyenda, hay cuatro formas. Están : 

  • Usando .remove()
  • Usando .set_visible()
  • Arreglar el atributo legend_ del objeto Axes requerido = Ninguno
  • Usando label=_nolegend_  

Método 1: Usar .remove()

Ejemplo 1: al usar el método ax.get_legend().remove() , la leyenda se puede eliminar de la figura en matplotlib.

Python3

import numpy as np
import matplotlib.pyplot as plt
 
x = np.linspace(-3, 3, 100)
y1 = np.power(x, 2)
y2 = np.power(x, 3)
 
fig, ax = plt.subplots()
 
ax.plot(x, y1, c = 'r',label = 'x^2')
ax.plot(x, y2, c = 'g',label = 'x^3')
 
leg = plt.legend()
 
ax.get_legend().remove()
 
plt.show()

 
 Producción : 

Podemos ver que no hay leyenda en la figura anterior.

Ejemplo 2: más de una subtrama: 

En el caso de más de una subparcela, podemos mencionar el objeto de subparcela requerido para el que queremos eliminar la leyenda. Aquí, hemos escrito axs[1].get_legend().remove() , lo que significa que estamos eliminando específicamente la leyenda para la segunda trama secundaria.
 

Python3

import numpy as np
import matplotlib.pyplot as plt
 
x = np.linspace(-3, 3, 100)
y1 = np.power(x, 2)
y2 = np.power(x, 3)
 
fig, axs = plt.subplots(2, 1)
 
axs[0].plot(x, y1, c = 'r',label = 'x^2')
axs[1].plot(x, y2, c = 'g',label = 'x^3')
 
axs[0].legend(loc = 'upper left')
axs[1].legend(loc = 'upper left')
 
axs[1].get_legend().remove()
 
 
plt.show()

Producción : 

En la figura anterior, eliminamos la leyenda de la segunda trama secundaria específicamente. La primera subtrama seguirá teniendo una leyenda.

Método 2: Usar set_visible()
 

Ejemplo 1: Al usar el método ax.get_legend().set_visible(False) , la leyenda se puede eliminar de la figura en matplotlib.

Python3

import numpy as np
import matplotlib.pyplot as plt
 
x = np.linspace(-3, 3, 1000)
y1 = np.sin(x)
y2 = np.cos(x)
 
fig, ax = plt.subplots()
 
ax.plot(x, y1,c = 'r',label = 'Sine')
ax.plot(x, y2,c = 'g',label = 'Cosine')
 
leg = plt.legend()
 
ax.get_legend().set_visible(False)
 
plt.show()

Producción :

Podemos ver que no hay leyenda en la figura anterior.

Ejemplo-2. Más de una subtrama:

En caso de más de una subparcela, podemos mencionar el objeto de subparcela requerido para el que queremos eliminar la leyenda. Aquí, hemos escrito axs[1].get_legend().set_visible(False) , lo que significa que estamos eliminando la leyenda específicamente para la segunda subtrama.

Python3

import numpy as np
import matplotlib.pyplot as plt
 
x = np.linspace(-3,3,1000)
y1 = np.sin(x)
y2 = np.cos(x)
 
fig, axs = plt.subplots(2,1)
 
axs[0].plot(x,y1,c='r',label = 'Sine')
axs[1].plot(x,y2,c='g',label = 'Cosine')
 
axs[0].legend(loc='upper left')
axs[1].legend(loc='upper left')
 
axs[1].get_legend().set_visible(False)
 
 
plt.show()

Producción : 

En la figura anterior, eliminamos específicamente la leyenda de la segunda subparcela. La primera subtrama seguirá teniendo leyenda.

Método 3: Arreglar el atributo legend_ del objeto Axes requerido = Ninguno:

Ejemplo 1: al usar ax.legend_ = None , la leyenda se puede eliminar de la figura en matplotlib.
 

Python3

import numpy as np
import matplotlib.pyplot as plt
 
x = np.linspace(-3, 3, 1000)
y1 = np.sin(x)
y2 = np.cos(x)
 
fig, ax = plt.subplots()
 
ax.plot(x, y1,c = 'r',label = 'Sine')
ax.plot(x, y2,c = 'g',label = 'Cosine')
leg = plt.legend()
ax.legend_ = None
 
plt.show()

Producción:

Podemos ver que no hay leyenda en la figura anterior.

Ejemplo 2: más de una subparcela:

En el caso de más de una subparcela, podemos mencionar el objeto de subparcela requerido para el que queremos eliminar la leyenda. Aquí, hemos escrito axs[0].legend_ = None , lo que significa que estamos eliminando la leyenda específicamente para la primera subparcela. 

Python3

import numpy as np
import matplotlib.pyplot as plt
 
x = np.linspace(-3, 3, 1000)
y1 = np.sin(x)
y2 = np.cos(x)
 
fig, axs = plt.subplots(2, 1)
 
axs[0].plot(x, y1, c = 'r',label = 'Sine')
axs[1].plot(x, y2,c = 'g',label = 'Cosine')
axs[0].legend(loc = 'upper left')
axs[1].legend(loc = 'upper left')
axs[0].legend_ = None
 
plt.show()

Producción:

En la figura anterior, eliminamos específicamente la leyenda de la primera subparcela. La segunda trama secundaria seguirá teniendo leyenda.

Método 4: Usar etiqueta = _leyenda_

Ejemplo 1: al enviar el argumento label = ‘_nolegend_’ en ax.plot(), la leyenda se puede eliminar de la figura en matplotlib.

Python3

import numpy as np
import matplotlib.pyplot as plt
 
x = np.linspace(-3, 3, 100)
y1 = np.power(x, 2)
y2 = np.power(x, 3)
 
fig, ax = plt.subplots()
 
ax.plot(x, y1, c = 'r',label = '_nolegend_')
ax.plot(x, y2,c = 'g',label = '_nolegend_')
 
leg = plt.legend()
 
plt.show()

Producción: 

Ejemplo-2. Más de una subtrama:

En caso de más de una subparcela, podemos mencionar el objeto de subparcela requerido para el que queremos eliminar la leyenda. Aquí, hemos escrito axs[0].plot(x,y1,c=’r’,label = ‘_nolegend_’) lo que significa que estamos eliminando específicamente la leyenda de la primera subparcela.

Python3

import numpy as np
import matplotlib.pyplot as plt
 
x = np.linspace(-3,3,100)
y1 = np.power(x,2)
y2 = np.power(x,3)
 
fig, axs = plt.subplots(2,1)
 
axs[0].plot(x,y1,c='r',label = '_nolegend_')
axs[1].plot(x,y2,c='g',label = 'x^3')
 
axs[0].legend(loc='upper left')
axs[1].legend(loc='upper left')
 
 
plt.show()

Producción : 

 En la figura anterior, eliminamos específicamente la leyenda de la primera subparcela. La segunda trama secundaria seguirá teniendo leyenda.

Publicación traducida automáticamente

Artículo escrito por vasireddykomalkumar y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA

Deja una respuesta

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