Detaillierte Erläuterung der Abbildungsmethode zur Verdeutlichung grafischer Inhalte
Vorwort
Hallo zusammen! Ich bin süßer Jiang.
In der Datenvisualisierung ist Matplotlib eine leistungsstarke und weit verbreitete Bibliothek, die verschiedene Methoden zur Erstellung hochwertiger Grafiken bereitstellt. In Matplotlib ist die Figure-Methode ein Kernkonzept zum Erstellen von Grafikfenstern und bietet viele Methoden zum Verwalten des Grafikinhalts. Unter diesen ist das Löschen des Grafikinhalts ein häufiger Bedarf, insbesondere wenn wir verschiedene Grafiken zeichnen oder vorhandene Grafiken im selben Grafikfenster aktualisieren müssen.
In diesem Artikel werden die beiden Hauptmethoden zum Löschen von Grafikinhalten in der Abbildungsmethode erläutert: clf () und clear (). Durch das Verständnis der Verwendung und der Unterschiede dieser Methoden können Leser Matplotlib besser zur Verwaltung grafischer Inhalte nutzen und so klarere und schönere Datenvisualisierungsgrafiken erstellen.
1 clf():
In Matplotlib wird die clf()-Methode der Figure-Klasse verwendet, um alle Axes-Objekte in der aktuellen Figur zu löschen und die Figur in ihren Ausgangszustand zurückzusetzen, was dem Löschen des gesamten Zeichnungsinhalts entspricht. Der Name der Methode „clf“ bedeutet „klare Figur“.
Das Folgende ist die grundlegende Verwendung der clf()-Methode:
fig.clf()
Dadurch werden alle Unterfiguren aus der Abbildung entfernt, sodass die Abbildung leer bleibt und zum Neuzeichnen neuer grafischer Inhalte bereit bleibt.
Analogie:
Angenommen, wir haben eine Galerie (Figur) und hängen zwei Gemälde (zwei Unterfiguren, Axes-Objekte) in dieser Galerie. Jetzt wollen wir die Galerie räumen und alle Gemälde abbauen, um sie für die Aufhängung neuer Gemälde vorzubereiten. Dies ähnelt der Verwendung der clf()-Methode zum Löschen aller Unterdiagramme in einem Diagramm.
Beispiel:
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()
Laufergebnisse:
Code-Analyse:
Dieser Code verwendet Matplotlib, um eine Galerie (Abbildung) zu erstellen und fügt dann zwei Gemälde (zwei Unterfiguren, Axes-Objekte) zur Galerie hinzu, ax1 bzw. ax2.
Jede Nebenhandlung verfügt über eine Linie, die mit der Plot-Methode gezeichnet wird, und einen Titel, der mit der set_title-Methode festgelegt wird.
Als nächstes wird die Galerie über die Methode fig.clf() geleert, wodurch alle zuvor hinzugefügten Unterfiguren entfernt werden.
Schließlich wird der Galerie ein neues Gemälde (neues Unterbild ax_new) hinzugefügt, was dem Aufhängen eines neuen Gemäldes in der Galerie ähnelt.
Der gesamte Prozess zeigt, wie Sie verschiedene Untergraphen in einer Grafik zeichnen, indem Sie den Grafikinhalt durch Löschen der Galerie zurücksetzen. Abschließend wird die aktualisierte Galerie über plt.show() angezeigt.
Zwei klar():
In Matplotlib wird die Methode „clear()“ der Klasse „Figure“ verwendet, um den gesamten Plotinhalt in der Abbildung zu löschen und die Abbildung leer zu machen. Im Gegensatz zur clf()-Methode kann clear() nicht nur Figuren, sondern auch einzelne Unterfiguren löschen.
Im Folgenden wird die grundlegende Verwendung der Methode „clear()“ beschrieben:
fig.clear()
Diese Codezeile löscht den gesamten Inhalt im Diagramm und hinterlässt das Diagramm in einem leeren Zustand, in dem neuer Zeichnungsinhalt hinzugefügt werden kann.
Analogie:
Angenommen, wir haben ein Whiteboard (Abbildung), auf dem zwei Bilder (zwei Unterbilder, Axes-Objekte) mit Kreide gezeichnet sind. Jetzt wollen wir das gesamte Whiteboard von allen Mustern befreien und die gesamte Kreide entfernen, damit wir ein neues Muster zeichnen können. Dies ähnelt der Verwendung der Methode „clear()“, um den gesamten Inhalt des Diagramms zu löschen.
Beispiel:
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()
Operationsergebnis:
Code-Analyse:
In diesem Beispiel haben wir zuerst ein Whiteboard erstellt und dann mit Kreide zwei Bilder auf das Whiteboard gezeichnet, nämlich ax1 und ax2. Anschließend werden alle Muster auf dem Whiteboard und die gesamte Kreide durch die Methode fig.clear() gelöscht. Zum Schluss zeichneten wir mit Kreide ein neues Muster auf das Whiteboard, das dem Zeichnen eines neuen Bildes ähnelte. Der gesamte Prozess demonstriert die Wirkung der Methode „clear()“ zum Löschen des Grafikinhalts.
Der Unterschied zwischen der Methode clear() und der Methode clf():
In Matplotlib werden clf() und clear() beide verwendet, um den Inhalt von Figure-Objekten zu löschen, sie weisen jedoch einige geringfügige Unterschiede auf.
- Wenn es um Clearing-Zahlen geht, haben sie alle die gleiche Wirkung.
- Wenn es jedoch um das Löschen von Untergraphen geht, unterstützt clf das Löschen des Inhalts von Untergraphen nicht, Clear jedoch schon.
1.clf()-Methode:
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()
Ausführungsergebnisse:
Versuchen Sie, den ax1-Untergraphen mit der clf-Methode zu löschen, es tritt jedoch ein Fehler auf.
2 Clear()-Methode
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()
Operationsergebnis:
Unterbildinhalt erfolgreich gelöscht.
Zusammenfassen:
In diesem Artikel werden die beiden Methoden zum Löschen grafischer Inhalte in der Figure-Methode in Matplotlib ausführlich vorgestellt: clf() und clear(). Mit einem umfassenden Verständnis dieser beiden Methoden können Leser die geeignete Methode zum Löschen von Grafikinhalten gemäß ihren eigenen Anforderungen auswählen und so Datenvisualisierungsgrafiken flexibler verwalten und aktualisieren. Durch das Studium dieses Artikels können Leser Matplotlib besser nutzen, um klare und schöne Datenvisualisierungsgrafiken zu erstellen und den Effekt der Datenanalyse und -anzeige zu verbessern.
Vielen Dank an alle fürs Lesen!
Wenn Sie der Meinung sind, dass dieser Blog für Sie nützlich ist, vergessen Sie nicht, sich uns anzuschließen.
Ich bin süßer Jiang, wir sehen uns das nächste Mal