[matplotlib animation] 92. quiverのアニメーション

matplotlib

はじめに

ベクトルを表示できるquiverを使ったアニメーションをmatplotlibのFuncAnimationによって作成する。

コード

解説

モジュールのインポート

バージョン

データの生成

ベクトルの始点と向きのデータを作成する。

ベクトルデータの表示

ax.quiver(x, y, u, v)により、ベクトルデータを表示できる。

三角波の生成

ベクトルの向きを変えるデータとして、三角波を用いる。

アニメーションの表示

ベクトルのプロット(q)を表示して、それをq.set_UVC(u,v)によってデータを更新することでアニメーションとする。FuncAnimationでアニメーションを表示する。frame数をlen(shift_v)=41,intervalを100msとして4秒のアニメーションとする。
HTML(ani.to_html5_video())により、jupyter notebook またはjupyter lab上にアニメーションを表示できる。

ani.save(‘ファイル名’, writer=”ffmpeg”,dpi=100)でアニメーションをMP4形式で保存することができる。

ベクトルの動きをsin波とした場合

コードをダウンロード(.pyファイル)

コードをダウンロード(.ipynbファイル)

参考

https://matplotlib.org/api/_as_gen/matplotlib.quiver.Quiver.html#matplotlib.quiver.Quiver

コメント