在 Matplotlib 中,plt.close() 和 plt.clf() 有什麼區別?


  • plt.figure() - 建立一個新圖形或啟用現有圖形。

  • plt.figure().close() - 關閉圖形視窗。

    • close() 本身會關閉當前圖形。

    • close(h),其中 h 是一個 Figure 例項,關閉該圖形。

    • close(num) 關閉編號為 num 的圖形。

    • close(name),其中 name 是一個字串,關閉具有該標籤的圖形。

    • close('all') 關閉所有圖形視窗。

  • plt.figure().clear() - 與 clf 相同。

  • plt.cla() - 清除當前座標軸。

  • plt.clf() - 清除當前圖形。

示例

import numpy as np
from matplotlib import pyplot as plt
plt.rcParams["figure.figsize"] = [7.00, 3.50]
plt.rcParams["figure.autolayout"] = True
x = np.linspace(-1, 1, 10)
y = np.linspace(1, 2, 10)

plt.plot(x, y, c='red')
plt.title("First Plot")
plt.show()
plt.clf()

plt.plot(x, y, c='green')
plt.title("Second Plot")
plt.show()
plt.close()

輸出

執行程式碼後,將顯示第一個繪圖。

之後,由於我們使用了 plt.clf(),它將清除圖形,但保持視窗開啟以繪製第二個繪圖。

之後,由於我們使用了 plt.close(),它將關閉當前視窗並釋放記憶體。

更新於:2021年5月8日

1K+ 次瀏覽

啟動您的 職業生涯

完成課程獲得認證

開始學習
廣告
© . All rights reserved.