ループを使用して、ベースマップ上にベクトル フィールドを生成しています。
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: copy basemap or remove data from figure、3D-numpy-array frame by frameも参照してください。
アニメーションを作成しようとしている場合はanimation
、matplotlib のモジュールを参照してください。多くの詳細が処理されます。