Rimuovi la legenda in Matplotlib

  1. matplotlib.axes.Axes.get_legend().remove()
  2. matplotlib.axes.Axes.get_legend().set_visible()
  3. label=nolegend Argomento nel metodo matplotlib.axes.Axes.plot()
  4. Imposta l’attributo legend_ dell’oggetto Axes su Nessuno

Potremmo usare i metodi remove() e set_visible() dell’oggetto legenda per rimuovere la legenda da una figura in Matplotlib. Possiamo anche rimuovere la legenda da una figura in Matplotlib impostando label su _nolegend_ nel metodo plot(), axes.legend su None e figure.legends su empty list.

matplotlib.axes.Axes.get_legend().remove()

Possiamo rimuovere la legenda dalla figura in Matplotlib usando il metodo matplotlib.axes.Axes.get_legend().remove().

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(-3,3,100)
y1=np.exp(x)
y2=3*x+2

fig, ax = plt.subplots(figsize=(8,6))

ax.plot(x, y1, c='r', label='expoential')
ax.plot(x, y2, c='g', label='Straight line')

leg = plt.legend()

ax.get_legend().remove()

plt.show() 

Produzione:

rimuovere la legenda in Matplotlib utilizzando il metodo di rimozione

matplotlib.axes.Axes.get_legend().set_visible()

Se passiamo False come argomento al metodo matplotlib.axes.Axes.get_legend().set_visible(), possiamo rimuovere la legenda dalla figura in Matplotlib.

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(-3,3,100)
y1=np.exp(x)
y2=3*x+2

fig, ax = plt.subplots(figsize=(8,6))

ax.plot(x, y1, c='r', label='expoential')
ax.plot(x, y2, c='g', label='Straight line')

leg = plt.legend()

ax.get_legend().set_visible(False)

plt.show()

Produzione:

rimuovere la legenda in Matplotlib utilizzando il metodo set_visible

Questo metodo effettivamente imposta la legenda invisibile ma non elimina la legenda.

label=nolegend Argomento nel metodo matplotlib.axes.Axes.plot()

Passare label=_nolegend_ come argomento nel metodo matplotlib.axes.Axes.plot() rimuove anche la legenda dalla figura in Matplotlib.

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(-3,3,100)
y1=np.exp(x)
y2=3*x+2

fig, ax = plt.subplots(figsize=(8,6))
leg = plt.legend()

ax.plot(x, y1, c='r', label='_nolegend_')
ax.plot(x, y2, c='g', label='_nolegend_')

plt.show()

Produzione:

rimuovere la legenda in Matplotlib utilizzando l'argomento legenda

Imposta l’attributo legend_ dell’oggetto Axes su Nessuno

L’impostazione dell’attributo legend_ dell’oggetto Axes su None rimuove la legenda da una figura in Matplotlib.

import numpy as np
import matplotlib.pyplot as plt

x=np.linspace(-3,3,100)
y1=np.exp(x)
y2=3*x+2

fig, ax = plt.subplots(figsize=(8,6))
leg = plt.legend()

ax.plot(x, y1, c='r', label='expoential')
ax.plot(x, y2, c='g', label='Straight line')

plt.gca.legend_ =None

plt.show()

Produzione:

rimuovere la legenda in Matplotlib impostando l'attributo della legenda dell'oggetto assi su Nessuno

Articolo correlato - Matplotlib Legend

  • Posiziona la legenda all'esterno del grafico in Matplotlib