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.
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