可以像这样(简化)生成垂直颜色条:

import matplotlib.pyplot as plt
import matplotlib as mpl

plt.figure()
c_ax=plt.subplot(111)
cb = mpl.colorbar.ColorbarBase(c_ax,orientation='vertical')
plt.savefig('my_colorbar.png')
结果是这样的(由于空间原因而旋转):python - Matplotlib色条在左侧/相反侧打勾-LMLPHP
是否可以在对面放置刻度线标签?

最佳答案

您可以使用c_ax.yaxis.set_ticks_position()切换刻度线的位置

因此,对于您的示例:

import matplotlib.pyplot as plt
import matplotlib as mpl

plt.viridis()

fig=plt.figure()
c_ax=plt.subplot(199)

cb = mpl.colorbar.ColorbarBase(c_ax,orientation='vertical')

c_ax.yaxis.set_ticks_position('left')

plt.savefig('my_colorbar.png')

python - Matplotlib色条在左侧/相反侧打勾-LMLPHP

请注意,您也可以通过类似的方式移动颜色条标签:
c_ax.yaxis.set_label_position('left')

最后,如果您有水平色条,并且想要将刻度和标签移到顶部,则可以在xaxis上使用等效功能:
c_ax.xaxis.set_label_position('top')
c_ax.xaxis.set_ticks_position('top')

关于python - Matplotlib色条在左侧/相反侧打勾,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/36939063/

10-12 22:53