2015-04-06 60 views
0

我有大量的數字,我想爲循環的每一步保存它。其實這下面第2個數字:Python - 循環與圖保存matplotlib

plt.subplots_adjust(hspace=0.5) 
plt.subplot(121) 
plt.imshow(U2[40,:,:],cmap=cm.hot);plt.colorbar() 

plt.subplot(122) 
plt.imshow(V2[60,:,:],cmap=cm.hot);plt.colorbar() 
plt.show() 

我的問題是如何能夠通過我在每一步FIG1更改名稱,保存fig2爲例?我可以使用imsave嗎?

+2

是的,你可以。使用不同的字符串作爲文件名,只需嘗試一下。 –

回答

2

您將用plt.savefig()替換plt.show()並使用格式字符串(以確保該數字用零填充到相同的長度)。當使用ffmpeg(或類似的)製作png文件的視頻時,這會讓生活變得更加輕鬆。此外,值得添加一個小小的停頓以確保圖形被重新繪製。對於你的情況,這看起來像

plt.subplots_adjust(hspace=0.5) 
plt.subplot(121) 
plt.imshow(U2[40,:,:],cmap=cm.hot);plt.colorbar() 

plt.subplot(122) 
plt.imshow(V2[60,:,:],cmap=cm.hot);plt.colorbar() 

plt.pause(0.0001) 
plt.savefig('./U2V2.{0:07d}.png'.format(step)) 

其中step是當前步號。您還應該考慮對每個數字(而不是步長)使用連續數字,每次數字生成時只會更改一個數字(再次使視頻生成更容易)。