Traccia più linee in Python Matplotlib
Questo tutorial spiega come tracciare più linee usando Matplotlib e impostare un colore diverso per ogni linea nella figura.
Traccia una singola riga in Python Matplotlib
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(8)
y = 4 * x - 10
plt.plot(x, y)
plt.title("Plot line in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.show()
Produzione:
Crea un grafico della linea usando la funzione matplotlib.pyplot.plot()
. Passiamo le coordinate X
e Y
della linea come argomenti alla funzione plot()
.
Traccia più linee in Python Matplotlib
Per tracciare più righe in Matplotlib, continuiamo a chiamare la funzione matplotlib.pyplot.plot()
per ogni riga e passiamo le coordinate della riga come argomento alla rispettiva funzione plot()
.
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5
plt.plot(x, y1)
plt.plot(x, y2)
plt.plot(x, y3)
plt.plot(x, y4)
plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.show()
Produzione:
Traccia quattro diverse linee con assi comuni, ciascuna con colori diversi. Chiamiamo la funzione matplotlib.pyplot.plot()
4 volte per tracciare le 4 diverse linee. Ogni volta che passiamo le coordinate di diverse linee come argomenti alla funzione.
Per rendere la trama più descrittiva, possiamo aggiungere la legenda alla trama per dedurre quale linea è rappresentata da quale colore.
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5
plt.plot(x, y1, label="4x+5")
plt.plot(x, y2, label="3x+5")
plt.plot(x, y3, label="2x+5")
plt.plot(x, y4, label="x+5")
plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.legend()
plt.show()
Produzione:
Traccia 4 linee nella figura insieme alla legenda. Per aggiungere una legenda alla figura, impostiamo un’etichetta per ogni linea mentre tracciamo la linea impostando il parametro label
nella funzione plot()
. Infine, chiamiamo matplotlib.pyplot.legend()
per aggiungere la legenda della figura.
Per impostazione predefinita, Matplotlib assegnerà automaticamente il colore alla linea. Se vogliamo controllare i colori per ogni riga, usiamo il metodo matplotlib.axes.Axes.set_prop_cycle()
.
import numpy as np
import matplotlib.pyplot as plt
x = np.arange(8)
y1 = 4 * x + 5
y2 = 3 * x + 5
y3 = 2 * x + 5
y4 = x + 5
colors = ["orange", "purple", "green", "red"]
plt.gca().set_prop_cycle(color=colors)
plt.plot(x, y1, label="4x+5")
plt.plot(x, y2, label="3x+5")
plt.plot(x, y3, label="2x+5")
plt.plot(x, y4, label="x+5")
plt.title("Plot Multiple lines in Matplotlib", fontsize=15)
plt.xlabel("X", fontsize=13)
plt.ylabel("Y", fontsize=13)
plt.legend()
plt.show()
Produzione:
Imposta arancione
per la prima riga, viola
per la seconda riga, green
per la terza riga e rosso
per la quarta riga. Passiamo la lista dei colori da usare in ordine come argomento al metodo matplotlib.axes.Axes.set_prop_cycle()
.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn