2016-04-29 60 views
9

人们可以产生垂直彩条像这样(简化):Matplotlib彩条蜱上左/相对侧

plt.figure() 
c_ax=plt.subplot(111) 
cb = mpl.colorbar.ColorbarBase(c_ax,orientation='vertical') 
plt.savefig('my_colorbar.png') 

在像这样得到的(旋转空间原因):enter image description here

是否有可能在对面获得蜱标签?

回答

13

可以使用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') 

enter image description here

注意,你也可以移动以类似的方式,彩条标签:

c_ax.yaxis.set_label_position('left') 

最后,万一你有水平的彩条,并希望将蜱和标签移动到顶部时,可以使用在xaxis等效功能:

c_ax.xaxis.set_label_position('top') 
c_ax.xaxis.set_ticks_position('top') 
+0

完美。我怎么能错过这个API? –