[matplotlib 3D] 3.等高線プロット

matplotlib 3D
スポンサーリンク

3種類の3次元等高線プロット

ただの3D等高線

コード

でできる図。

解説

axes3d.get_test_dataでデータが得られる。

cset = ax.contour(X, Y, Z)でXY座標の各点における高さ(Z)で等高線を作成する。

cmap=cm.coolwarmで色の設定。(その他の色)

ax.clabel(cset, fontsize=9, inline=1)

等高線のラベルの設定だが、3Dグラフでは表示できない様子。
2Dグラフの場合は以下のようになる。

リボン状等高線

コード

でできる図。

解説

extend3d=Trueで線ではなく、リボン状にして表示する。

3D等高線+2D等高線

コード

でできる図。

解説

各面にデータを転写して表示する。

cset = ax.contour(X, Y, Z, zdir='z', offset=-100, cmap=cm.coolwarm)

xy面のZ=-100にZの等高線を表示。

cset = ax.contour(X, Y, Z, zdir='x', offset=-40, cmap=cm.coolwarm)

yz面のx=-40にXの等高線を表示。

cset = ax.contour(X, Y, Z, zdir='y', offset=40, cmap=cm.coolwarm)

xz面のy=-40にYの等高線を表示。

コメント