[英]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.