Python-使用图循环以保存matplotlib

Python-使用图循环以保存matplotlib,python,loops,matplotlib,save,Python,Loops,Matplotlib,Save,我有大量的数字,我想为循环的每一步保存它。实际上是两个数字,如下所示: 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() 我的问题是,如何通过在每个步骤中更改名称来保存,如图1、图2所示?我可

我有大量的数字,我想为循环的每一步保存它。实际上是两个数字,如下所示:

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()
我的问题是,如何通过在每个步骤中更改名称来保存,如图1、图2所示?我可以使用imsave吗?

您可以将plt.show()替换为plt.savefig(),并使用格式字符串(以确保数字填充为相同长度的零)。使用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))

其中步骤是当前步骤编号。你也应该考虑使用每个数字的序号(而不是步骤),每次生成一个图形时只改变一个(再次使视频生成更容易)。使用不同的字符串作为文件名,请尝试。