Rimuovi la legenda in Matplotlib
-
matplotlib.axes.Axes.get_legend().remove() -
matplotlib.axes.Axes.get_legend().set_visible() -
label=nolegendArgomento nel metodomatplotlib.axes.Axes.plot() -
Imposta l’attributo
legend_dell’oggettoAxessu 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:

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:

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:

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:

Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn