Heim >Backend-Entwicklung >Python-Tutorial >Wie kann ich wiederverwendbare AxesSubplot-Objekte in Matplotlib erstellen?

Wie kann ich wiederverwendbare AxesSubplot-Objekte in Matplotlib erstellen?

Patricia Arquette
Patricia ArquetteOriginal
2024-11-23 08:21:34863Durchsuche

How Can I Create Reusable AxesSubplot Objects in Matplotlib?

Wiederverwendbare AxesSubplot-Objekte in Matplotlib erstellen

Matplotlib stellt die Figure.add_subplot-Methode als Standardansatz zum Hinzufügen von AxesSubplot-Objekten zu einer Figur bereit. Obwohl dies effektiv ist, kann es Szenarios geben, in denen es wünschenswert ist, AxesSubplot-Objekte unabhängig von der Figur zu erstellen.

Um die AxesSubplot-Erstellung von Figureninstanzen zu entkoppeln, kann man die Leistungsfähigkeit der Übergabe von Achseninstanzen an Funktionen nutzen. Zum Beispiel:

def plot(x, y, ax=None):
    if ax is None:
        ax = plt.gca()  # Get the current axes instance (default)
    ax.plot(x, y, 'go')
    ax.set_ylabel('Yabba dabba do!')

In diesem Beispiel verwendet die Plotfunktion ein optionales Achsenargument, was Flexibilität bei der Verwendung bietet:

# Create a figure with two subplots
fig1, (ax1, ax2) = plt.subplots(nrows=2)
plot(x, np.sin(x), ax1)  # Use the first axes instance
plot(x, np.random.random(100), ax2)  # Use the second axes instance

# Create a new figure
fig2 = plt.figure()
plot(x, np.cos(x))  # Use the new figure's axes instance

plt.show()

Zusätzlich können Achseninstanzen an vorhandene Figuren angehängt werden , was eine Wiederverwendung ermöglicht:

import matplotlib.pyplot as plt

# Create an axes instance
ax = plt.gca()
ax.plot(range(10))

# Create a new figure
fig2 = plt.figure()
fig2.axes.append(ax)  # Add the existing axes instance to the new figure

plt.show()

Während es möglicherweise möglich ist, die Achseninstanz weiter anzupassen, um sie an bestimmte „Formen“ anzupassen, ist die Weitergabe von Figuren einfacher und Achseninstanzen oder Instanzlisten sind für komplexe Szenarien im Allgemeinen praktischer und effizienter.

Das obige ist der detaillierte Inhalt vonWie kann ich wiederverwendbare AxesSubplot-Objekte in Matplotlib erstellen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn