[matplotlib 3D] 21. 3Dグラフにテキストを表示

matplotlib 3D

はじめに

mplot3dで作成した3Dグラフ上にテキストを表示する方法について解説する。

コード

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

解説

モジュールのインポート

テキストデータの生成と表示

(zdirs, xs, ys, zs)の組み合わせは6個あるので、6個プロットされる。
%dとすることで()のx,y,z,zdirがそれぞれ当てはめられるので、最初のラベルは、

(1, 2, 10), dir=None

となる。そして、この場合、テキストは(x, y, z)=(1, 2, 10)の位置にプロットされる。

zdirはテキストの向きを設定できる。’x’の場合、x軸に平行、’y’の場合、y軸に平行、’z’の場合、z軸に平行となる。

(1,1,0)や(1,1,1)の場合、(0,0,0)からその座標に沿ってテキストが表示される。

テキストの色を変える

ax.text()のcolorで色の設定ができる。

text2Dによるテキストの表示

transform=ax.transAxes でfig全体の大きさを1としたときの相対的な位置にプロットされる。原点は左下なので、(0.1,0.9)の場合、左上にプロットされる。[1]

参考

mplot3d example code: text3d_demo.py — Matplotlib 2.0.2 documentation
Transformations Tutorial — Matplotlib 2.0.2 documentation

コメント