在matplotlib中更改colorbars的fontsize

tak*_*nbo 3 matplotlib python-2.7 colorbar

我在以下代码中调整颜色条上的刻度字体大小时遇到​​困难.

fig = plt.figure(figsize=(10,6))

ax = fig.add_subplot(111)
im = ax.pcolor(np.ma.masked_invalid(np.roll(lon, -1100, axis=1)[:2100, :3500]), 
           np.ma.masked_invalid(np.roll(lat, -1100, axis=1)[:2100, :3500]), 
           np.ma.masked_invalid(np.roll(np.absolute(zeta_Mar), -1100, axis=1)[:2100, :3500]),
              cmap='Reds', norm=colors.LogNorm(vmin=1e-6, vmax=1e-4))
ax.set_xlabel('Longitude', fontsize=14)
ax.set_xlabel('Latitude', fontsize=14)
cbar_axim = fig.add_axes([0.95, 0.15, 0.03, 0.7])
cbar = fig.colorbar(im, cax=cbar_axim, ticks=[1e-6, 1e-5, 1e-4])
cbar.set_ticklabels([r'$-10^{-6}$', r'$10^{-5}$', r'$10^{-4}$'])
cbar.set_label(r'$\zeta\ [s^{-1}]$', fontsize=16)

plt.show()
Run Code Online (Sandbox Code Playgroud)

谁能告诉我包含fontsize参数的正确语法?

Ken*_*ste 12

使用 cbar.ax.tick_params(labelsize=10)

这里这里


The*_*lis 5

如果我使用@Yugi 的回答,我会收到乳胶错误。您还可以使用以下方法设置字体大小:

ticklabs = cbar.ax.get_yticklabels()
cbar.ax.set_yticklabels(ticklabs, fontsize=10)
Run Code Online (Sandbox Code Playgroud)


Ale*_*din 5

如果您试图增加字体大小但由于大尺寸而某些数字消失了,您可以这样做

cbar = plt.colorbar()
for t in cbar.ax.get_yticklabels():
     t.set_fontsize(20)
Run Code Online (Sandbox Code Playgroud)