Explication détaillée de la méthode des figures pour effacer le contenu graphique

Explication détaillée de la méthode des figures pour effacer le contenu graphique


Préface

Bonjour à tous! Je suis doux Jiang.

Insérer la description de l'image ici
En visualisation de données, Matplotlib est une bibliothèque puissante et largement utilisée qui fournit diverses méthodes pour créer des graphiques de haute qualité. Dans Matplotlib, la méthode figure est un concept central utilisé pour créer des fenêtres graphiques et fournit de nombreuses méthodes pour gérer le contenu des graphiques. Parmi eux, effacer le contenu graphique est un besoin courant, surtout lorsque nous devons dessiner différents graphiques ou mettre à jour des graphiques existants dans la même fenêtre graphique.
Cet article abordera les deux principales méthodes d'effacement du contenu graphique dans la méthode figure : clf() et clear(). En comprenant l'utilisation et les différences de ces méthodes, les lecteurs seront en mesure de mieux utiliser Matplotlib pour gérer le contenu graphique, créant ainsi des graphiques de visualisation de données plus clairs et plus beaux.

1 clf() :

Dans Matplotlib, la méthode clf() de la classe Figure est utilisée pour effacer tous les objets Axes de la figure actuelle et ramener la figure à son état initial, ce qui équivaut à effacer tout le contenu du dessin. Le nom de la méthode « clf » signifie « figure claire ».

Voici l'utilisation de base de la méthode clf() :

fig.clf()

Cela supprime toutes les sous-figures de la figure, laissant la figure vide et prête à redessiner un nouveau contenu graphique.

analogie:

Supposons que nous ayons une galerie (Figure) et que nous accrochions deux peintures (deux sous-figures, objets Axes) dans cette galerie. Maintenant, nous voulons vider la galerie et démonter toutes les peintures en vue d'en accrocher de nouvelles. Cela revient à utiliser la méthode clf() pour effacer tous les sous-tracés d'un graphique.

Exemple:

import matplotlib.pyplot as plt

# 创建一个画廊(Figure)
fig = plt.figure()

# 添加第一幅画(子图1)
ax1 = fig.add_subplot(121)
ax1.plot([0, 1], [0, 1], label='Plot 1')
ax1.set_title('Plot 1')

# 添加第二幅画(子图2)
ax2 = fig.add_subplot(122)
ax2.plot([0, 1], [1, 0], label='Plot 2')
ax2.set_title('Plot 2')


# 清空画廊,拿下所有的画
fig.clf()

# 添加新的画(新的子图)
ax_new = fig.add_subplot(111)
ax_new.plot([0, 1], [0, 1], label='New Plot')
ax_new.set_title('New Plot')

# 显示更新后的画廊
plt.show()

Résultats d'exécution :
Insérer la description de l'image ici
Analyse du code :

Ce code utilise Matplotlib pour créer une galerie (Figure), puis ajoute deux peintures (deux sous-figures, objets Axes) à la galerie, ax1 et ax2 respectivement.

Chaque sous-intrigue a une ligne tracée à l'aide de la méthode plot et un jeu de titres à l'aide de la méthode set_title.

Ensuite, la galerie est effacée via la méthode fig.clf(), qui supprime toutes les sous-figures précédemment ajoutées.

Enfin, un nouveau tableau (nouvelle sous-image ax_new) est ajouté à la galerie, ce qui revient à accrocher un nouveau tableau sur la galerie.

L'ensemble du processus montre comment dessiner différents sous-graphiques dans un graphique en réinitialisant le contenu graphique en effaçant la galerie. Enfin, la galerie mise à jour est affichée via plt.show().

Deux clear() :

Dans Matplotlib, la méthode clear() de la classe Figure est utilisée pour effacer tout le contenu du tracé de la figure, rendant la figure vide. Contrairement à la méthode clf(), clear() peut non seulement effacer des figures, mais également des sous-figures individuelles.

Voici l'utilisation de base de la méthode clear() :

fig.clear()

Cette ligne de code effacera tout le contenu du graphique, laissant le graphique dans un état vide où un nouveau contenu de dessin pourra être ajouté.

analogie:

Supposons que nous ayons un tableau blanc (Figure) sur lequel deux images (deux sous-images, objets Axes) sont dessinées à la craie. Nous voulons maintenant effacer tout le tableau blanc de tous les motifs et effacer toute la craie afin de pouvoir dessiner un nouveau motif. Cela revient à utiliser la méthode clear() pour effacer tout le contenu du graphique.
Exemple:

import matplotlib.pyplot as plt

# 创建一个白板(Figure)
fig = plt.figure()

# 用粉笔在白板上画第一幅图(子图1)
ax1 = fig.add_subplot(121)
ax1.plot([0, 1], [0, 1], label='Drawing 1')
ax1.set_title('Drawing 1')

# 用粉笔在白板上画第二幅图(子图2)
ax2 = fig.add_subplot(122)
ax2.plot([0, 1], [1, 0], label='Drawing 2')
ax2.set_title('Drawing 2')



# 清除白板上的所有图案
fig.clear()

# 用粉笔在白板上画新的图案(新的子图)
ax_new = fig.add_subplot(111)
ax_new.plot([0, 1], [0, 1], label='New Drawing')
ax_new.set_title('New Drawing')

# 展示更新后的白板上的图案
plt.show()

résultat de l'opération :
Insérer la description de l'image ici

Analyse des codes :

Dans cet exemple, nous avons d'abord créé un tableau blanc, puis utilisé de la craie pour dessiner deux images sur le tableau blanc, à savoir ax1 et ax2. Ensuite, tous les motifs sur le tableau blanc sont effacés et toute la craie est effacée grâce à la méthode fig.clear(). Enfin, nous avons utilisé de la craie pour dessiner un nouveau motif sur le tableau blanc, ce qui revenait à dessiner une nouvelle image. L'ensemble du processus démontre l'effet de la méthode clear() pour effacer le contenu graphique.

La différence entre la méthode clear() et la méthode clf() :

Dans Matplotlib, clf() et clear() sont tous deux utilisés pour effacer le contenu des objets Figure, mais ils présentent quelques différences mineures.

  • Lorsqu’il s’agit d’éclaircir les chiffres, ils ont tous le même effet.
  • Mais lorsqu'il s'agit d'effacer les sous-graphiques, clf ne prend pas en charge l'effacement du contenu des sous-graphes, contrairement à clear.

Méthode 1.clf() :

import matplotlib.pyplot as plt

# 创建一个画廊(Figure)
fig = plt.figure()

# 添加第一幅画(子图1)
ax1 = fig.add_subplot(121)
ax1.plot([0, 1], [0, 1], label='Plot 1')
ax1.set_title('Plot 1')

# 添加第二幅画(子图2)
ax2 = fig.add_subplot(122)
ax2.plot([0, 1], [1, 0], label='Plot 2')
ax2.set_title('Plot 2')

# 清空画廊,拿下所有的画
ax1.clf()

# 显示更新后的画廊
plt.show()

Résultats d'exécution :
Insérer la description de l'image ici
essayez d'utiliser la méthode clf pour effacer le sous-graphe ax1, mais une erreur se produit.
2 méthodes clear()

import matplotlib.pyplot as plt

# 创建一个画廊(Figure)
fig = plt.figure()

# 添加第一幅画(子图1)
ax1 = fig.add_subplot(121)
ax1.plot([0, 1], [0, 1], label='Plot 1')
ax1.set_title('Plot 1')

# 添加第二幅画(子图2)
ax2 = fig.add_subplot(122)
ax2.plot([0, 1], [1, 0], label='Plot 2')
ax2.set_title('Plot 2')

# 清空画廊,拿下所有的画
ax1.clear()

# 显示更新后的画廊
plt.show()

résultat de l'opération :

Insérer la description de l'image ici

Le contenu de la sous-image a été effacé avec succès.

Résumer:

Cet article présente en détail les deux méthodes d'effacement du contenu graphique dans la méthode figure dans Matplotlib : clf() et clear(). Avec une compréhension approfondie de ces deux méthodes, les lecteurs peuvent choisir la méthode appropriée pour effacer le contenu graphique en fonction de leurs propres besoins, gérant et mettant ainsi à jour les graphiques de visualisation des données de manière plus flexible. Grâce à l'étude de cet article, les lecteurs seront en mesure de mieux utiliser Matplotlib pour créer des graphiques de visualisation de données clairs et esthétiques et améliorer l'effet de l'analyse et de l'affichage des données.

Merci à tous d'avoir lu !

Si vous pensez que ce blog vous est utile, n’oubliez pas de nous rejoindre.

Je suis gentil Jiang, à la prochaine fois

Insérer la description de l'image ici

Insérer la description de l'image ici

Je suppose que tu aimes

Origine blog.csdn.net/m0_74195174/article/details/135905538
conseillé
Classement