Python 如何在Matplotlib中更改刻度的权重和colorbar的标签?

Python 如何在Matplotlib中更改刻度的权重和colorbar的标签?,python,matplotlib,colorbar,Python,Matplotlib,Colorbar,我写了这样一个绘图函数: 将matplotlib导入为mpl 将matplotlib.pyplot作为plt导入 def plotPot(函数,标题): plt.figure(num=None,figsize=(2,1.8),dpi=800,facecolor='w',edgecolor='k') 字体={'family':'DejaVu Sans','size':8} mpl.rc('font',**font) mpl.rcParams['axes.titlepad']=12 席=NP.林空间

我写了这样一个绘图函数:

将matplotlib导入为mpl
将matplotlib.pyplot作为plt导入
def plotPot(函数,标题):
plt.figure(num=None,figsize=(2,1.8),dpi=800,facecolor='w',edgecolor='k')
字体={'family':'DejaVu Sans','size':8}
mpl.rc('font',**font)
mpl.rcParams['axes.titlepad']=12
席=NP.林空间(- 10, 10, 100)
yi=np.linspace(-10,10100)
十、 Y=np.meshgrid(xi,yi)
Z=func(X,Y)
轮廓曲线图(X,Y,Z,20,cmap='RdGy')
plt.xlabel(“x/kpc”)
plt.xticks(fontsize=5)
plt.ylabel(“y/kpc”)
plt.yticks(np.arange(-10,15,步骤=5))
plt.yticks(fontsize=5)
勾选定位器=mpl.ticker.MaxNLocator(nbins=5)
cbar=plt.colorbar(延伸='note',间距='比例',
方向=垂直,收缩=1)
cbar.locator=勾号定位器
cbar.update_ticks()
cbar.ax.tick_参数(labelsize=5,grid_alpha=0.5,direction='in')
cbar.set_label(label=r'$g^{2}/cm^{2}$',size='small',weight='light')
返回cbar
给定的图是:


如您所见,绘图的刻度和标签都是粗体的。如何以更轻松的形式更改它们?

您的代码为我生成(定义所有未定义的变量时)。由于某种原因,你的身材看起来太小了;您能否确认这确实是生成图像的代码?您可以将
fontwweight
传递给ticks:
plt.yticks(fontsize=5,fontwweight='normal')
。在顶部的录音带中,您可以看到所有选项是的,我确信这是生成图像的代码。即使我更改了图形大小,这些字体在colorbar中仍然是粗体。fontweight仅更改x-y刻度,但您能否解释如何更改colorbar的刻度?根据我的经验,定义图形大小并不总是如预期的那样有效,并且对每个输出都不一样。尝试通过plt.rcParams定义figure.figsize,并将图形保存到png文件中。这应该会给你一些更类似于@ImportanceOfBeingErnest所看到的东西。由于某种原因,你的身材看起来太小了;您能否确认这确实是生成图像的代码?您可以将
fontwweight
传递给ticks:
plt.yticks(fontsize=5,fontwweight='normal')
。在顶部的录音带中,您可以看到所有选项是的,我确信这是生成图像的代码。即使我更改了图形大小,这些字体在colorbar中仍然是粗体。fontweight仅更改x-y刻度,但您能否解释如何更改colorbar的刻度?根据我的经验,定义图形大小并不总是如预期的那样有效,并且对每个输出都不一样。尝试通过plt.rcParams定义figure.figsize,并将图形保存到png文件中。这应该会给你一些更类似于@ImportanceOfBeingErnest所看到的东西。