如何在子图中更改科学格式轴标签的字体大小?

问题描述 投票:1回答:1

我正在使用subplot命令在单个图形中绘制两个直方图。我想更改轴标签中科学计数法的字体大小。我可以在单个绘图中使用ax.xaxis.get_offset_text().set_fontsize(14)来更改大小。但是在子图中,此命令不起作用。

这是我的2个子图的代码。

plt.figure()
fig, ax = plt.subplots()

plt.subplot(1,2,1)      
num_bins = 30
# the histogram of the data
n, bins, patches = plt.hist(time0, num_bins,  density = True, edgecolor='black', 
histtype='bar',facecolor='red', label = '$M_1=1000$')
plt.legend()
plt.title('A', fontsize = 16)
plt.ylabel(r'P($\tau_s$)', fontsize=16)
plt.legend(fontsize=5)
plt.xticks(fontsize=14)
plt.yticks(fontsize=14) 
plt.ticklabel_format(style='sci', axis='both', scilimits=(0,0),fontsize=20, fontweight = 
'bold',useMathText=True, useLocale = True, loc = 'best')
plt.ticklabel_format(useOffset=True)
plt.ticklabel_format(fontsize=20)
ax.yaxis.get_offset_text().set_fontsize(14)
ax.xaxis.get_offset_text().set_fontsize(14)

plt.subplot(1,2,2)      
num_bins = 30
# the histogram of the data
n, bins, patches = plt.hist(time1, num_bins,  density = True, 
   edgecolor='black', histtype='bar',facecolor='red', label = 
   '$M_1=10000$')
plt.legend()
plt.title('B', fontsize = 16)
plt.legend(fontsize=5)
plt.xticks(fontsize=14)
plt.yticks(fontsize=14) 
plt.ticklabel_format(style='sci', axis='both', scilimits=
(0,0),fontsize=20, fontweight = 'bold',
    useMathText=True, useLocale = True, loc = 'best')
plt.ticklabel_format(useOffset=True)
plt.ticklabel_format(fontsize=20)
ax.yaxis.get_offset_text().set_fontsize(14)
ax.xaxis.get_offset_text().set_fontsize(14)

tight_layout()
plt.savefig('dist.eps')

如果您知道解决方法,请帮助我。

python python-3.x matplotlib axis-labels
1个回答
0
投票
plt.subplot(2,2,1)
© www.soinside.com 2019 - 2024. All rights reserved.