"Si un ouvrier veut bien faire son travail, il doit d'abord affûter ses outils." - Confucius, "Les Entretiens de Confucius. Lu Linggong"
Page de garde > La programmation > Comment créer un objet AxessubPlot réutilisable dans Matplotlib?

Comment créer un objet AxessubPlot réutilisable dans Matplotlib?

Publié le 2025-04-16
Parcourir:613

How Can I Create Reusable AxesSubplot Objects in Matplotlib?

Création d'objets axessubplot réutilisables dans matplotlib

matplotlib fournit la méthode Figure.add_subplot comme approche standard pour ajouter des objets AxesSubplot à une figure. Bien que cela soit efficace, il peut y avoir des scénarios où la création d'objets AxeSSUBPlot indépendamment de la figure est souhaitable.

pour découpler la création d'axessubplot à partir des instances de figure, on peut exploiter la puissance de passer les instances des axes aux fonctions. Par exemple:

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!')

Dans cet exemple, la fonction de tracé prend un argument des axes facultatifs, offrant une flexibilité dans son utilisation:

# 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()

De plus, les instances des axes peuvent être annexées aux figures existantes, permettant de réutiliser:

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()

Bien qu'il puisse être possible de personnaliser davantage l'instance des axes pour s'adapter aux "formes" spécifiques, la facilité de passage des figures et des axes ou des listes d'instances est généralement plus pratique et efficace pour les scénarios complexes.

Dernier tutoriel Plus>

Clause de non-responsabilité: Toutes les ressources fournies proviennent en partie d'Internet. En cas de violation de vos droits d'auteur ou d'autres droits et intérêts, veuillez expliquer les raisons détaillées et fournir une preuve du droit d'auteur ou des droits et intérêts, puis l'envoyer à l'adresse e-mail : [email protected]. Nous nous en occuperons pour vous dans les plus brefs délais.

Copyright© 2022 湘ICP备2022001581号-3