[matplotlib animation] 37. 3Dグラフの縦回転アニメーション

matplotlib 3D

はじめに

3Dグラフの縦回転アニメーションとは、三次元空間に描画されたグラフを垂直軸(通常はz軸)を中心に回転させる視覚的表現手法です。これにより、データの全方位からの観察が可能になり、データ構造の理解が深まります。ここでは、matplotlib FuncAnimationによる3Dグラフの縦回転アニメーションについて説明します。

コード

解説

モジュールのインポート

グラフの設定

ピラミッドの作成

ピラミッド形状は、以下で説明する方法と同様にボクセルを使用して作成します。

[matplotlib 3D] 46.ボクセルピラミッド(Voxel Pyramid)
Matplotlibの3Dグラフ機能を使用して、voxel(ボクセル)でピラミッド形状を描画する方法を解説します。3次元空間内に立体的なピラミッドを表現し、視覚的に理解しやすいデータ可視化手法を紹介します。

アニメーションの設定

視点変更するための配列の生成

3Dグラフの高さ方向の視点(elev)において、180度と-180度は同じ表示になるため、endpoint = Falseを設定して180を配列に含めないようにしました。np.concatenate()関数で配列を連結し、最終的な配列サイズは101としています。

アニメーションの設定

アニメーションの初期設定でグラフのz軸範囲を調整します。

ax.view_init()メソッドを使用して視点を変更できます。この例では、方位角(azim)を60度に固定し、仰角(elev)をrotate_elev[i]の値で変化させることでアニメーションを作成します。

アニメーションの表示

HTML(ani.to_html5_video())とすればjupyter notebook上にアニメーションを表示できます。

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

参考

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

コメント