我正在使用循环在底图上生成矢量场,如下所示:
for i in range(365):
barbs = m.quiver(x, y, u[i, :], v[i, :], scale = 100)
plt.draw()
barbs.remove()
该程序在每个循环中都会占用更多的内存。有没有办法解决这个问题?比如在每个循环结束时完全删除倒钩?
我正在使用循环在底图上生成矢量场,如下所示:
for i in range(365):
barbs = m.quiver(x, y, u[i, :], v[i, :], scale = 100)
plt.draw()
barbs.remove()
该程序在每个循环中都会占用更多的内存。有没有办法解决这个问题?比如在每个循环结束时完全删除倒钩?
如果您只需要重置 (u,v) 组件,您可以barb.set_UVC(newU,newV,newC)
在循环内使用。
barbs = m.quiver(x, y, u[0, :], v[0, :], scale = 100)
for i in range(365):
barbs.set_UVC(u[i,:],v[i,:])
#save the figure or something
另请参阅Python:复制底图或从图中删除数据,逐帧可视化 3D-numpy-array,
如果您正在尝试创建动画,请查看animation
matplotlib 模块,它会为您处理很多细节。