[英]Python - Loop with figure to save matplotlib
我有很多数字,我想将其保存到循环的每一步。 实际上是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()
我的问题是如何通过在每个步骤中将名称更改为“ fig1”,“ fig2”作为示例来保存? 我可以使用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))
其中step是当前步骤号。 您还应该考虑为每个图形(而不是步骤)使用一个序号,每次生成图形时该序号只会改变一个(再次使视频生成更容易)。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.