[matplotlib 3D] 61. 3D plotにおけるアスペクト比(2023年最新版)

matplotlib

はじめに

matplotlib mplot3dの3Dグラフで、アスペクト比を調整する方法について説明する。

matplotlib 3.6.0から3D プロットの X、Y、Z 軸の縦横比を、defaultの ‘auto’ だけではなく ‘equal’、’equalxy’、’equalxz’、または ‘equalyz’ に設定できるようになった。

コード&解説

モジュールのインポート

バージョン

設定可能なアスペクト比のリスト

3Dオブジェクトの作成

skimageのballを使用して3Dオブジェクトを作成する。詳細は以下の記事に書いてある。

[scikit-image] 81. サイズの異なる球状の構造化要素を生成(skimage.morphology.ball)
skimage.morphologyのballで、大きさの異なる球状の構造化要素を作成して表示する。

aspect比の異なるFigを複数表示

ax.voxelsでボクセルで表示した。aspect=equalにすることで、x,y,z軸の比率が揃っていることがわかる。

equalxyではx軸とy軸の比が、equalyzではy軸とz軸の比が、equalxzではx軸とz軸の比が揃うものと考えられる。

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

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

参考

What's new in Matplotlib 3.6.0 (Sep 15, 2022) — Matplotlib 3.6.2 documentation

コメント