[matplotlib] 55. Colorbarの目盛りとそのラベルの設定

matplotlib

はじめに

matplotlibのColorbarで任意の目盛りとラベルを設定する方法について説明する。

コード

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

解説

モジュールのインポート

データの生成

4096個のランダムなデータを64×64の形状に変換した。

画像の表示

カラーバーの表示と目盛りの設定

fig.colorbar(im, ticks=[0,0.5, 1])のように、ticksをリストで指定することで、指定した位置に目盛りが表示される。
カラーバーの表示範囲は、デフォルトの垂直方向カラーバーの場合、ax.set_ylim()で設定できる。
同様に、目盛りラベルは、ax.set_yticklabels([‘< 0’, ‘0.5’, ‘> 1’]) のように設定できる。

水平方向カラーバーについて

カラーバーを水平にしたい場合、cbar = fig.colorbar()orientation='horizontal'とする。
水平カラーバーの場合、目盛りラベルの設定は、set_xticklabels となる。

水平方向カラーバーを上に表示する場合

mpl_toolkits.axes_grid1make_axes_locatableを用いる。
cax.xaxis.set_ticks_position('top')とすることで目盛りの表示位置を上側にすることができるので、目盛りラベルも上側に表示される。そのため、画像と目盛りラベルが重ならなくなる。

参考

pylab_examples example code: colorbar_tick_labelling_demo.py — Matplotlib 2.0.2 documentation
Demo Colorbar with Axes Divider — Matplotlib 3.1.2 documentation

コメント