Plotten mehrerer Linien in Python Matplotlib
Dieses Tutorial erklärt, wie wir mit Matplotlib mehrere Linien plotten und für jede Linie in der Abbildung eine andere Farbe einstellen können.
Plotten einer einzelnen Linie 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()
Ausgabe:
Es wird ein Plot der Linie mit Hilfe der Funktion matplotlib.pyplot.plot()
erstellt. Wir übergeben die X
- und Y
-Koordinaten der Linie als Argumente an die plot()
-Funktion.
Plotten mehrerer Linien in Python Matplotlib
Um mehrere Linien in Matplotlib zu plotten, rufen wir weiterhin die Funktion matplotlib.pyplot.plot()
für jede Linie auf und übergeben die Koordinaten der Linie als Argument an die jeweilige plot()
Funktion.
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()
Ausgabe:
Es werden vier verschiedene Linien mit gemeinsamen Achsen geplottet, jeweils mit unterschiedlichen Farben. Wir rufen die Funktion matplotlib.pyplot.plot()
4 mal auf, um die 4 verschiedenen Linien zu plotten. Jedes Mal übergeben wir die Koordinaten der verschiedenen Linien als Argumente an die Funktion.
Um den Plot anschaulicher zu machen, können wir die Legende zum Plot hinzufügen, um zu erfahren, welche Linie durch welche Farbe dargestellt wird.
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()
Ausgabe:
Es werden 4 Linien in der Abbildung zusammen mit der Legende geplottet. Um der Abbildung eine Legende hinzuzufügen, setzen wir eine Beschriftung für jede Linie, während wir die Linie plotten, indem wir den Parameter label
in der Funktion plot()
setzen. Schließlich rufen wir matplotlib.pyplot.legend()
auf, um die Legende der Abbildung hinzuzufügen.
Standardmäßig weist Matplotlib der Linie automatisch die Farbe zu. Wenn wir die Farben für jede Linie steuern wollen, verwenden wir die Methode 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()
Ausgabe:
Sie setzt orange
für die erste Zeile, purple
für die zweite Zeile, green
für die dritte Zeile und red
für die vierte Zeile. Wir übergeben die Liste der Farben, die in der Reihenfolge verwendet werden sollen, als Argument an die Methode matplotlib.axes.Axes.set_prop_cycle()
.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn