logo
Loading...

範例中的 plt.clf() 和 plt.cla() 分別是什麼用途呢? - Cupoy

在範例中使用了 plt.clf() 和 plt.cla(),想請問他們的功用是什麼?看了一些網路上的...

ml100,ml100-d59

範例中的 plt.clf() 和 plt.cla() 分別是什麼用途呢?

2020/08/20 下午 11:41
dimension reduction 1 降維方法-主成份分析
張少華
觀看數:628
回答數:2
收藏數:3
ml100
ml100-d59

在範例中使用了 plt.clf() 和 plt.cla(),想請問他們的功用是什麼?

看了一些網路上的說明還是不太清楚,可以舉例說明嗎?

再範例程式碼中將這兩個指令拿掉還是可以運作,想知道使用這兩個指令的原因是什麼呢?

回答列表

  • 2020/08/21 上午 11:12
    Tracy Huang
    贊同數:3
    不贊同數:0
    留言數:0

    分別是clear figure 跟 clearaxis

    plt畫圖是先建立一個figure window

    想像這就是一張畫布,plt.clf就是把圖擦掉, cla就是把xy軸擦掉

    另外有close是把整個window關掉


    至於為什麼這麼做,想像如果不這麼做,每次畫圖時你要再重新開一個figure window

    如此一來, 記憶體很快就爆炸了

  • 2020/08/21 下午 09:40
    張維元 (WeiYuan)
    贊同數:1
    不贊同數:0
    留言數:0

    嗨,


    你可以把 plt 想像成是一個畫布,上面會有「圖表」、「XY 軸」、「標題等等資訊」。plt.clf() 和 plt.cla() 的清除程度有差:


    * cla()   # Clear axis => 清除軸上的資料

    * clf()   # Clear figure => 清除圖表

    * close() # Close a figure window => 清除畫布


    但都會看起來像是圖表消失一樣。另外「再範例程式碼中將這兩個指令拿掉還是可以運作,想知道使用這兩個指令的原因是什麼呢?」是因為 Jupyter Notebook 預設會處理。


    如果這個回答對你有幫助請主動點選「有幫助」或「最佳解答」的按鈕,也可以追蹤我的GITHUB 帳號。若還有問題的話,也歡迎再開一個新的問題繼續發問,或者把你理解的部分整理上來,我都會提供你 Review 和 Feedback 😃😃😃另外我目前有舉辦一個社群活動:學員限定!CUPOY 馬拉松線上小聚 👨🏻‍💻👨🏻‍💻,歡迎一起來玩玩!