[matplotlib 3D] 20. 極座標系の3D surfaceプロット

matplotlib 3D

はじめに

matplotlibのmplot3dで極座標系の座標系を用いて3Dsurface plotを作成する方法について説明する。

コード

解説

モジュールのインポート

データの生成

rが動径, pが方位角となる。R,Pはr,pのmeshgridとなっている。

により直交座標系へ変換する。

グラフの表示

cmap = plt.cm.coolwarm_rとした場合

cmapのcoolwarmに_rをつけることでカラーマップを反転させることができる。

極座標系で球を表示

同様の方法で球を極座標系のデータで表示することも可能。3次元極座標の直交座標への変換は下記のようになる。

x = r sin θ cos ϕ

y = r sin θ sin ϕ

z = r cos θ
コードをダウンロード(.pyファイル)

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

参考

物理数学:ヤコビアン
座標系の選択による違い。
https://matplotlib.org/gallery/mplot3d/surface3d_radial.html#sphx-glr-gallery-mplot3d-surface3d-radial-py

コメント