[matplotlib animation] 55. 3Dグラフ上での点と線のアニメーション

matplotlib Animation

はじめに

matplotlib, mplot3dの3Dグラフ上での点と線によるアニメーションについて解説する。

コード

解説

モジュールのインポート

データの生成

np.random.randint(-10,10,(3,100))により-10から10の範囲の整数で(3,100) の形状の配列(np.array)を生成する。

データのプロット

各データの最初のデータを点で示す。(point1,point2,point3)
各データの各点をそれぞれ結ぶ線を表示する。(line_1_2, line_2_3, line_3_1)

アニメーションの初期設定

軸範囲と軸ラベルの設定をする。returnでアニメートする変数を返さなければならない。

アニメーションの設定

set_dataとset_3d_propertiesによって各プロットのデータを更新していく。こちらもreturnでアニメーション変数を返さなければならない。

アニメーションの表示

FuncAnimation でアニメーションを表示する。repeat=Trueとすることでアニメーションは繰り返して再生される。HTML(ani.to_html5_video())とすればjupyter notebook上にアニメーションをうまく表示できる。

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

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

参考

[matplotlib animation] 2.3D lineplot アニメーション
3Dグラフでのラインプロットのアニメーションを作成する方法について説明する。
[matplotlib 3D] 33. マーカーによるアニメーション
matplotlibのmplot3dとFuncAnimationでマーカーによるアニメーションを作成する。
Draw 3D line animation using Python Matplotlib.FuncAnimation
draw 3D line animation using python matplotlib.funcanimation

コメント