緒言
3Dグラフを回転させるアニメーションは、データの全体像を把握するのに非常に効果的です。以下では、基本的な実装方法を解説します。
コード
解説
モジュールのインポート
グラフの設定
ピラミッドの作成
ピラミッド形状は、以下のコードと同様にボクセルを使用して作成します。

[matplotlib 3D] 46.ボクセルピラミッド(Voxel Pyramid)
Matplotlibの3Dグラフ機能を使用して、voxel(ボクセル)でピラミッド形状を描画する方法を解説します。3次元空間内に立体的なピラミッドを表現し、視覚的に理解しやすいデータ可視化手法を紹介します。
アニメーションの設定
視点変更するための配列の生成
3Dグラフの高さ方向(視点elev)において、180°と-180°は同じ表示になるため、endpoint = Falseを設定して180を配列に含めないようにしました。np.concatenate()関数で配列を連結し、最終的な配列サイズは101としています。
水平方向の回転については、rotate_azim = np.linspace(60,420,101)と設定することで、60°から始まり101ステップで1周回転(360°)するアニメーションを作成しています。
アニメーションの設定
アニメーションの初期設定でグラフのz軸範囲を調整します。
ax.view_init()関数で視点を変更できます。azim=rotate_azim[i]とelev=rotate_elev[i]を設定することで、方位角(azim)と仰角(elev)の両方が変化するアニメーションを作成できます。
アニメーションの表示
HTML(ani.to_html5_video())とすればjupyter notebook上にアニメーションを表示できます。
コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)参考

[matplotlib 3D] 14. 3Dグラフの回転アニメーション
matplotlibのmplot3dを使用して3Dグラフの回転アニメーションを作成する方法を解説します。動画として保存する手順や回転角度の制御など、3Dビジュアライゼーションを動的に表現するための基本テクニックを紹介します。
コメント