はじめに
matplotlibのmplot3dとFuncAnimationでマーカーによるアニメーションを作成する。
コード
解説
モジュールのインポート
バージョン
3D figureの作成
表示範囲の設定
xlim, ylim, zlimで表示範囲の設定をする。
データの生成
球のデータを生成する。3Dグラフにおける球は下記で説明した。
[matplotlib 3D] 18. 3D surfaceプロットで球を表示
matplotlibのmplot3dをつかって、3Dグラフ上にsurface plotで球を表示する方法について解説する。
アニメーションの設定
scat1とscat2をplotデータとして、set_dataとset_3d_propertiesでデータを追加し、順次表示させることでアニメーションとなる。
return scat1, scat2,のようにプロットを返すことが必要となる。
アニメーションの表示
figでanimateを実行する。frames=100はanimateのiが100までという意味であり、interval=100は100msで次のプロットに変化していくので、100 ms*100で10 sの動画となる。
アニメーション中に3Dグラフの表示範囲を変化させる場合
animate中で、ax.set(xlim=(x[:1+i,:].min(),x[:1+i,:].max()),ylim=(y[:1+i,:].min(),y[:1+i,:].max()))とすれば、x,y軸を更新されるアニメーションとなる。
コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)参考
3次元散布図のアニメーションプロット
###前提・実現したいこと Pythonで三次元散布図でのアニメーションを実装中に以下のエラーメッセージが発生しました。 ###発生している問題・エラーメッセージ Traceback (m
コメント