如何在matplotlib中将colorbar位置向右移动?

时间:2013-03-11 02:35:52

标签: matplotlib colorbar

我画一个散点图如下: enter image description here

代码是:

sc = plt.scatter(x, y, marker='o', s=size_r, c=clr, vmin=lb, vmax=ub, cmap=mycm, alpha=0.65)
cbar = plt.colorbar(sc, shrink=0.9)

我想将颜色条向右移动一点以扩展绘图区域。怎么做?

2 个答案:

答案 0 :(得分:16)

使用pad属性。

cbar = plt.colorbar(sc, shrink=0.9, pad = 0.05)

make_axes()的文档描述了如何使用pad:“pad:0.05如果是垂直的,0.15则是水平的;是原始轴在colorbar和新图像轴之间的分数”。

答案 1 :(得分:10)

实际上,您可以将颜色条放在任何您想要的位置。

fig1=figure()
sc = plt.scatter(x, y, marker='o', s=size_r, c=clr, vmin=lb, vmax=ub, cmap=mycm, alpha=0.65)
position=fig1.add_axes([0.93,0.1,0.02,0.35])  ## the parameters are the specified position you set 

fig1.colorbar(sc,cax=position) ##