カラーバーのテキスト位置に問題があります。私は matplotlib Basemap を使用していくつかのプロットを作成しており、colorbar()
関数を使用しています。
ここで、カラーバーを Figure の左側に配置する必要があります。だから私は を使用location='left'
しますが、目盛りとラベルのテキストはカラーバーの右側に表示され、画像の一部に重なっています。
バーの左側のテキストを変更する方法はありますか?
カラーバーのテキスト位置に問題があります。私は matplotlib Basemap を使用していくつかのプロットを作成しており、colorbar()
関数を使用しています。
ここで、カラーバーを Figure の左側に配置する必要があります。だから私は を使用location='left'
しますが、目盛りとラベルのテキストはカラーバーの右側に表示され、画像の一部に重なっています。
バーの左側のテキストを変更する方法はありますか?
残念ながら、完全に統合された方法ではありませんが、mpl などの OO プロット ライブラリを扱っている場合、ほとんどのことが可能です。
約 3 か月前に、この機能をよりアクセスしやすい形で実装する変更に取り組みました (https://github.com/matplotlib/matplotlib/pull/956) が、いくつかの根本的な変更が行われたため、マージしないことにしました。そのため、この変更は多くの種類のプロットに適用できなくなりました。
左側に目盛りを付けてカラーバーを作成するには、次のようにします。
<your_colorbar_instance>.ax.yaxis.set_ticks_position('left')
実際の作業例:
import matplotlib
# create a dummy scalar mappable to create a colour bar with:
sm = plt.cm.ScalarMappable(cmap=plt.get_cmap('Reds'))
sm.set_array(range(10))
# create the colorbar and put the ticks on the left hand side
cb = plt.colorbar(sm)
cb.ax.yaxis.set_ticks_position('left')
plt.show()
HTH、