簡體   English   中英

情節循環真的很慢

[英]Plot looping really slow

我正在編寫一個代碼以在函數上擬合高斯,如果我沒有繪制結果(它是~60x60光譜的數據立方體,所以我使用的是循環),代碼工作得非常快。

但是當我說每個圖形繪制的代碼變得非常慢時,就像2個圖形一樣(當我不繪制時它就像40個)。

好吧,我知道減慢速度可能是正確的,但IDL中有一個完全相同的代碼,代碼每秒運行8~10個圖。

有沒有辦法改善它? 或者python真的比IDL慢?

這是情節代碼:

plt.plot(wavelengthset, data_datacube[minpixel:maxpixel+1, j, i], 'k-', 
         wavelengthset, gaussian(fit[0], wavelengthset), 'r-')

plt.draw()

plt.clf()

我建議考慮刪除plt.draw()並使用blit 如果這還不夠,請讓我更多地了解您的數據和情節的目的。

有關更多信息,請參閱此答案: 為什么使用Matplotlib進行繪圖這么慢?

正如上面鏈接提到的答案,matplotlib專為高質量,可定制的交互式繪圖而設計。 Matplotlib可能比你在IDL中熟悉的數據處理工具要慢,但這並不是說另一個速度敏感的Python工具包不會那么快/有用。

祝好運!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM