はじめに
matplotlibのmplot3dの3Dグラフでは、グラフを回転させても軸と軸ラベルのオフセットが一定に保たれることを示す。
コード
解説
データの生成
X, Y = np.mgrid[0:6*np.pi:0.1*np.pi, 0:6*np.pi:0.1*np.pi]
np.mgridはmeshgridと同じ。
Z = np.sqrt(np.abs(np.cos(X) + np.cos(Y)))
np.sqrt()は平方根を返してくれて、np.abs()は絶対値を返してくれる。
グラフの表示
ax.plot_surface(X + 1e6, Y + 1e6, Z + 1e6, cmap='winter', ccount=60, rcount=60)
XとYとZに1e6を足すことで、目盛りを1000#のように表示するのではなく、1e6を近くに表示して簡略化してくれる。”1e6”は3Dグラフを動かして視点を変えてみても常に一定の位置にある。
反対にひっくり返した場合
反対にひっくり返しても1e6は正常な位置にある。
コードをダウンロード(.pyファイル) コードをダウンロード(.ipynbファイル)参考
Automatic Text Offsetting — Matplotlib 3.1.0 documentation
コメント