Python 如何保存箭袋图
让我给你看看我的代码Python 如何保存箭袋图,python,image,matplotlib,while-loop,Python,Image,Matplotlib,While Loop,让我给你看看我的代码 array['fieldv'].shape 如果我绘制一个元素,这个图像就会出现 %matplotlib inline U, V = array['fieldv'][10,:,:,0], array['fieldv'][10,:,:,1] plt.quiver(U[::4,::4], V[::4, ::4]) 现在我的问题是:如何将112个元素的所有箭袋保存在一个目录中? 我给你看我的代码,它不工作 %matplotlib inline i = 0 while i
array['fieldv'].shape
如果我绘制一个元素,这个图像就会出现
%matplotlib inline
U, V = array['fieldv'][10,:,:,0], array['fieldv'][10,:,:,1]
plt.quiver(U[::4,::4], V[::4, ::4])
现在我的问题是:如何将112个元素的所有箭袋保存在一个目录中?
我给你看我的代码,它不工作
%matplotlib inline
i = 0
while i != len(array['fieldv'][0]):
U, V = array['fieldv'][i:,:,0], array['fieldv'][i,:,:,1]
fig = plt.quiver(U[::4,::4], V[::4, ::4])
filename = '/home/rr/workspace/TEST/OUTPUT/vectorf/'
fig.savefig(filename + 'TEST_' + str(i) + '.png')
i += 1
plt.quiver
不返回图形实例(选中type(fig)
,您将看到plt.quiver
实际上创建了一个quiver实例)。箭袋对象没有savefig
方法,因此fig.savefig
将不起作用。但是,您应该能够将fig.savefig
命令与plt.savefig
交换
作为更一般的评论,我认为在这里使用for循环比使用while语句更合适。对于范围内的I(数组['fieldv'].shape[0]):,我会这样做。我还认为.format
有点整洁:plt.savefig('{}TEST{}.png'.format(filename,I))
总而言之,我会:
filename = '/home/rr/workspace/TEST/OUTPUT/vectorf/'
for i in range(array['fieldv'].shape[0]):
U, V = array['fieldv'][i:,:,0], array['fieldv'][i,:,:,1]
Q = plt.quiver(U[::4,::4], V[::4, ::4])
plt.savefig('{}TEST_{}.png'.format(filename, i))
filename = '/home/rr/workspace/TEST/OUTPUT/vectorf/'
for i in range(array['fieldv'].shape[0]):
U, V = array['fieldv'][i:,:,0], array['fieldv'][i,:,:,1]
Q = plt.quiver(U[::4,::4], V[::4, ::4])
plt.savefig('{}TEST_{}.png'.format(filename, i))