Modificare lo spessore della linea delle linee in Matplotlib Legend
-
Metodo
set_linewidth()
per impostare lo spessore della linea in Matplotliblegend
-
Metodo
matplotlib.pyplot.setp()
per impostare la larghezza della linea in Matplotliblegend
Possiamo cambiare lo spessore della linea (spessore della linea) delle linee nella legenda Python Matplotlib usando il metodo set_linewidth()
dell’oggetto legenda e il metodo setp()
degli oggetti artista
.
Metodo set_linewidth()
per impostare lo spessore della linea in Matplotlib legend
Il parametro linewidth
nella funzione plot
può essere usato per controllare la larghezza del grafico di un particolare oggetto, e il metodo set_linewidth()
può essere usato per controllare la larghezza delle linee della legenda in Matplotlib.
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-3, 3, 100)
y1 = np.sin(x)
y2 = np.cos(x)
fig, ax = plt.subplots(figsize=(8, 6))
ax.plot(x, y1, c="r", label="sinx", linewidth=3.0)
ax.plot(x, y2, c="g", label="cosx", linewidth=5.0)
leg = plt.legend()
leg.get_lines()[0].set_linewidth(6)
leg.get_lines()[1].set_linewidth(10)
plt.show()
Produzione:
Le larghezze delle linee di due linee nel grafico Python Matplotlib sono rispettivamente 3.0
e 5.0
, e la larghezza delle linee nella legenda per impostazione predefinita usa la stessa larghezza della linea del grafico.
leg = plt.legend()
leg.get_lines()[0].set_linewidth(6)
leg
è l’oggetto Python Matplotlib legend
, e leg.get_lines()
restituisce l’lista delle istanze di riga nella legenda.
set_linewidth()
potrebbe cambiare lo spessore della linea (spessore della linea) della linea della legenda in modo che sia un altro valore piuttosto che quello nel grafico.
Metodo matplotlib.pyplot.setp()
per impostare la larghezza della linea in Matplotlib legend
Il metodo matplotlib.pyplot.setp()
ci permette di impostare la proprietà degli oggetti pyplot. Possiamo usare il parametro linewidth
della funzione setp()
per impostare l’ampiezza di riga di un particolare oggetto della legenda.
import numpy as np
import matplotlib.pyplot as plt
x = np.linspace(-3, 3, 100)
y1 = np.sin(x)
y2 = np.cos(x)
fig, ax = plt.subplots(figsize=(8, 6))
ax.plot(x, y1, c="r", label="sinx", linewidth=3.0)
ax.plot(x, y2, c="g", label="cosx", linewidth=5.0)
leg = plt.legend()
leg_lines = leg.get_lines()
leg_texts = leg.get_texts()
plt.setp(leg_lines[0], linewidth=6)
plt.setp(leg_lines[1], linewidth=12)
plt.setp(leg_texts, fontsize=10)
plt.show()
Produzione:
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn