はじめに
matplotlibライブラリを使用してカラーバー(Colorbar)の目盛りやラベルをカスタマイズする方法を解説します。グラフの色スケールを表すカラーバーは、データの値を色で表現する際に重要な役割を果たします。本記事では、特に目盛りの位置や間隔、ラベルのテキストなどを自由に設定し、より分かりやすいデータ可視化を実現するための手法を紹介していきます。
コード

解説
モジュールのインポート
バージョン
データの生成
4096個のランダムなデータを64×64の形状に変換しました。
画像の表示
カラーバーの表示と目盛りの設定
ticksパラメータにリスト(例:fig.colorbar(im, ticks=[0, 0.5, 1])
)を指定することで、カラーバーに任意の位置に目盛りを表示できます。
垂直方向のカラーバー(デフォルト)の表示範囲は、ax.set_ylim()
メソッドで設定可能です。
また、目盛りのラベルはax.set_yticklabels(['< 0', '0.5', '> 1'])
のように設定できます。
水平方向カラーバーについて

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

mpl_toolkits.axes_grid1
のmake_axes_locatable
を使用します。cax.xaxis.set_ticks_position('top')
を設定することで、目盛りの表示位置を上部に変更できます。これにより目盛りラベルも上部に表示されるため、画像と目盛りラベルが重なることを防ぐことができます。
参考
Colorbar Tick Labelling — Matplotlib 3.4.3 documentation
Colorbar with AxesDivider — Matplotlib 3.10.5 documentation
コメント