AxesSubplot-Objekte über Figuren hinweg teilen
In Matplotlib ist es üblich, AxesSubplot-Objekte mit der Methode Figure.add_subplot() zu erstellen. Möglicherweise möchten Sie jedoch die Erstellung von Achsen-Unterplots von Figureninstanzen entkoppeln, um sie in verschiedenen Figuren wiederzuverwenden.
Achsen-Subplot-Objekte unabhängig erstellen
Um dies zu erreichen, können Sie dies tun Verwenden Sie einen alternativen Ansatz:
import matplotlib.pyplot as plt axes = plt.AxesSubplot(fig, 1, 1, 1) # Create an empty axes subplot axes.set_xlabel("X-Label") # Populate axes settings axes.set_ylabel("Y-Label")
Damit können Sie ein AxesSubplot-Objekt erstellen, ohne es zu verknüpfen mit einer bestimmten Figur.
Hinzufügen von AxesSubplot-Objekten zu Figuren
Sobald Sie Achsen-Subplots unabhängig voneinander erstellt haben, können Sie diese mit den folgenden Methoden zu Figuren hinzufügen:
# Add axes to figure 1 fig1 = plt.figure() fig1.axes.append(axes) # Add axes to figure 2 fig2 = plt.figure() fig2.axes.append(axes)
Äxte wiederverwenden Nebenhandlungen
Durch das Hinzufügen von Achsen-Nebenhandlungen zu mehreren Figuren können Sie diese bequem wiederverwenden. Sie könnten beispielsweise eine Funktion definieren, um Daten auf dem Unterdiagramm der angegebenen Achsen darzustellen:
def plot_on_axes(axes, data): axes.plot(data)
Diese Funktion kann dann in verschiedenen Abbildungen verwendet werden, um dieselben Daten auf dem Unterdiagramm der gemeinsamen Achsen darzustellen.
Achsengröße ändern
Das Verschieben eines AxesSubplot-Objekts von einer Figur zu einer anderen erfordert möglicherweise eine Größenänderung, um sie an die neue anzupassen Layout der Figur. Um die Größe der Achsen zu ändern, können Sie die Methode set_geometry() verwenden:
axes.set_geometry(1, 2, 1) # Update axes geometry for figure 1, with two columns
Beispiel
Der folgende Codeausschnitt zeigt, wie Sie Achsen-Unterdiagramme unabhängig voneinander erstellen und wiederverwenden können:
import matplotlib.pyplot as plt # Create independent axes subplots ax1 = plt.AxesSubplot(None, 1, 1, 1) ax2 = plt.AxesSubplot(None, 1, 1, 1) # Populate axes settings ax1.set_xlabel("X1") ax1.set_ylabel("Y1") ax2.set_xlabel("X2") ax2.set_ylabel("Y2") # Add axes subplots to figure 1 fig1 = plt.figure() fig1.axes.append(ax1) fig1.axes.append(ax2) # Add axes subplots to figure 2 fig2 = plt.figure() fig2.axes.append(ax1) plt.show()
In diesem Beispiel werden Unterplots mit zwei Achsen erstellt, zu zwei verschiedenen Figuren hinzugefügt und angezeigt sie.
Das obige ist der detaillierte Inhalt vonWie verwende ich AxesSubplot-Objekte in verschiedenen Figuren in Matplotlib wieder?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!