Hinzufügen von Subplot zu einer Abbildung in Matplotlib
-
Hinzufügen von Subplot zu einer Abbildung unter Verwendung der Methode
matplotlib.pyplot.figure.add_subplot()
-
Abbildung mit Subplots unter Verwendung von
Matplotlib.pyplot.subplots()
erstellen
![Hinzufügen von Subplot zu einer Abbildung in Matplotlib](/img/Matplotlib/feature-image---Add-subplot-to-a-figure-matplotlib.webp)
Dieses Tutorial erklärt, wie man mit der Methode matplotlib.pyplot.figure.add_subplot()
in Python zu einer Matplotlib-Figur Subplots hinzufügen kann.
Hinzufügen von Subplot zu einer Abbildung unter Verwendung der Methode matplotlib.pyplot.figure.add_subplot()
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(5, 5))
x = [1, 2, 3, 4, 5]
y = [2, 4, 5, 1, 2]
subplot = fig.add_subplot(1, 1, 1)
subplot.plot(x, y)
fig.suptitle("Figure with only one Subplot")
plt.show()
Ausgabe:
Sie erzeugt eine Figur mit nur einer Unterhandlung. Die Abbildung kann als ein übergeordnetes Element interpretiert werden, das alle Untergrafiken und andere Elemente der Abbildung enthält. Wir initialisieren zunächst das Figur-Objekt der Größe (5,5)
und fügen dann mit der Methode add_subplot()
eine Unterhandlung zu der Figur hinzu. Das erste Argument der Methode add_subplot()
repräsentiert die Anzahl der Subplot-Reihen in der Abbildung, das zweite Argument repräsentiert die Anzahl der Subplot-Spalten und das dritte Argument repräsentiert die Position eines Subplot im Gitter.
In diesem Fall fügt fig.add_subplot(1,1,1)
eine Teilfläche an der ersten Position zum Gitter 1 X 1
in der Abbildung hinzu. Alternativ können wir auch fig.add_subplot(111)
verwenden, um das gleiche Ergebnis zu erzielen. Die Methode add_subplot()
gibt ein Objekt axes
zurück, das zum Plotten und Hinzufügen von Details zu der hinzugefügten Nebenhandlung verwendet werden kann.
import matplotlib.pyplot as plt
fig = plt.figure(figsize=(8, 6))
ax_1 = fig.add_subplot(121)
ax_1.text(0.3, 0.5, "subplot(121)")
ax_2 = fig.add_subplot(222)
ax_2.text(0.3, 0.5, "subplot(222)")
ax_3 = fig.add_subplot(224)
ax_3.text(0.3, 0.5, "subplot(224)")
fig.suptitle("Figure with multiple Subplots")
plt.show()
Ausgabe:
Hier haben wir eine Figur mit drei Subplots. Die erste Nebenhandlung ist die erste Figur im Gitter mit einer Zeile und zwei Spalten. Die zweite Nebenhandlung stellt die zweite Figur im Gitter mit zwei Zeilen und zwei Spalten dar. In ähnlicher Weise stellt die dritte Zeile die Nebenhandlung an der vierten Position im Gitter mit zwei Zeilen und zwei Spalten dar.
Abbildung mit Subplots unter Verwendung von Matplotlib.pyplot.subplots()
erstellen
Die Matplotlib.pyplot.subplots()
fügt der Abbildung ebenfalls Subplots hinzu. Wir übergeben die Anzahl der Zeilen und Spalten als Argument an die Methode, und die Methode gibt ein Figur-Objekt und ein Achsen-Objekt zurück, die zur Manipulation des Plots verwendet werden können.
import matplotlib.pyplot as plt
fig, ax = plt.subplots(2, 1)
ax[0].text(0.3, 0.5, "1st Subplot")
ax[0].set_xticks([])
ax[0].set_yticks([])
ax[1].text(0.3, 0.5, "2nd Subplot")
ax[1].set_xticks([])
ax[1].set_yticks([])
fig.suptitle("Figure with 2 subplots", fontsize=16)
plt.show()
Ausgabe:
Es erzeugt eine Figur mit zwei Unterpunkten in einem Gitter aus zwei Zeilen und einer einzelnen Spalte mit der Methode subplots()
. Die erste Untergraphik oder die Achsen oben können mit dem ersten Element in der ax
-Liste manipuliert werden, und die zweite Untergraphik oder die Achsen unten können mit dem zweiten Element in der ax
-Liste manipuliert werden.
import matplotlib.pyplot as plt
x = [1, 2, 3, 4, 5]
y1 = [i ** 2 for i in x]
y2 = [4 * i + 1 for i in x]
fig, ax = plt.subplots(2, 1)
ax[0].plot(x, y1)
ax[0].set_xlabel("X")
ax[0].set_ylabel("Y")
ax[1].plot(x, y2)
ax[1].set_xlabel("X")
ax[1].set_ylabel("Y")
plt.tight_layout()
plt.show()
Ausgabe:
Es erzeugt eine Figur mit zwei Unterdarstellungen, stellt die Funktion x^2
in der oberen Unterdarstellung dar und stellt die Funktion 4x+1
in der unteren Unterdarstellung dar.
Suraj Joshi is a backend software engineer at Matrice.ai.
LinkedIn