Maison > développement back-end > Tutoriel Python > Comment réutiliser des objets AxesSubplot sur différentes figures dans Matplotlib ?

Comment réutiliser des objets AxesSubplot sur différentes figures dans Matplotlib ?

Susan Sarandon
Libérer: 2024-11-28 16:18:11
original
591 Les gens l'ont consulté

How to Reuse AxesSubplot Objects Across Different Figures in Matplotlib?

Partage d'objets AxesSubplot entre figures

Dans matplotlib, il est courant de créer des objets AxesSubplot à l'aide de la méthode Figure.add_subplot(). Cependant, vous souhaiterez peut-être dissocier la création de sous-intrigues d'axes des instances de figure pour les réutiliser dans différentes figures.

Créer des objets AxesSubplot indépendamment

Pour y parvenir, vous pouvez utiliser une approche alternative :

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")
Copier après la connexion

Cela vous permet de créer un objet AxesSubplot sans l'associer à une figure spécifique.

Ajout d'objets AxesSubplot aux figures

Une fois que vous avez créé des sous-intrigues d'axes indépendamment, vous pouvez les ajouter aux figures en utilisant les méthodes suivantes :

# Add axes to figure 1
fig1 = plt.figure()
fig1.axes.append(axes)

# Add axes to figure 2
fig2 = plt.figure()
fig2.axes.append(axes)
Copier après la connexion

Réutilisation des haches Sous-intrigues

En ajoutant des sous-intrigues d'axes à plusieurs figures, vous pouvez les réutiliser facilement. Par exemple, vous pouvez définir une fonction pour tracer des données sur le sous-tracé des axes spécifié :

def plot_on_axes(axes, data):
    axes.plot(data)
Copier après la connexion

Cette fonction peut ensuite être utilisée dans diverses figures pour tracer les mêmes données sur le sous-tracé des axes partagés.

Redimensionner les axes

Déplacer un objet AxesSubplot d'une figure à une autre peut nécessiter un redimensionnement pour correspondre au nouveau disposition de la figure. Pour redimensionner les axes, vous pouvez utiliser la méthode set_geometry() :

axes.set_geometry(1, 2, 1)  # Update axes geometry for figure 1, with two columns
Copier après la connexion

Exemple

L'extrait de code suivant montre comment créer et réutiliser des sous-tracés d'axes indépendamment :

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()
Copier après la connexion

Cet exemple crée des sous-intrigues à deux axes, les ajoute à deux figures différentes et affiche eux.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal