マップを使用して、1 つのプロットで 2 つのカラーバーを取得したいと思います。残念ながら、カラーバーはプロット自体と同じ大きさです。カラーバーコードで縮小を使用しても、カラーバーが縮小されるだけで、カラーバーが占めるサイズは縮小されません。
プロットにより多くのスペースを使用し、カラーバーにより少ないスペースを使用する簡単な方法はありますか? また、カラーバーを下部に並べて表示する簡単な方法はありますか?
コードは以下です
plt.clf()
my_cmap = cm.get_cmap('YlOrRd')
cs = map.contourf(x,y,bj,levels = Y,cmap=my_cmap,locator=mpl.ticker.LogLocator())
norm = mpl.colors.BoundaryNorm(bounds, my_cmap.N)
cb1 = plt.colorbar(cmap=my_cmap,
norm=norm,
boundaries=bounds,
extend='both',
orientation="horizontal",
ticks=bounds,
shrink = 0.35)
cb1.set_label('Increase in Black Carbon')
bj = -bj
ymap = cm.get_cmap('PuBu')
cs = map.contourf(x,y,bj,levels = Y,cmap=ymap,locator=mpl.ticker.LogLocator())
# set colourbar with location and size, with labels.
norm = mpl.colors.BoundaryNorm(bounds,ymap.N)
cb2 = plt.colorbar(cmap=my_cmap,
norm=norm,
boundaries=bounds,
extend='both',
orientation="horizontal",
ticks=bounds,
shrink=0.35)
cb2.set_label('Decrease in Black Carbon')
font = {'family' : 'serif',
'color' : 'black',
'weight' : 'bold',
'size' : 21,
}
#add plot details
plt.title(r'Black Carbon surface concentrations changes in %s 2006 compared with %s 2006 ($\mu$gm$\^3$)'%(g,d) ,fontdict=font)
map.drawcoastlines(linewidth=0.75)
map.drawcountries(linewidth=0.25)
#show plot
plt.show()