出于某种原因,我想在顶部轴上绘制xtick标签。但是在下面的代码中无法更改fontsize参数。我绘制了两个子图作为参考。
f =plt.figure(figsize = (12,6))
ax1 = plt.subplot(211)
ax1.plot(np.arange(0,10,1),np.arange(0,10,1))
ax1.xaxis.set_ticks_position('both')
ax1.yaxis.set_ticks_position('both')
ax1.tick_params(axis='x', which='both', labeltop ='on',labelbottom = 'off')
for tick in ax1.xaxis.get_major_ticks():
tick.label.set_fontsize(24)
ax2 = plt.subplot(212)
ax2.plot(np.arange(0,10,1),np.arange(0,10,1))
ax2.xaxis.set_ticks_position('both')
ax2.yaxis.set_ticks_position('both')
ax2.tick_params(axis='x', which='both', labeltop ='off',labelbottom = 'on')
for tick in ax2.xaxis.get_major_ticks():
tick.label.set_fontsize(24)
因此,如何更改x顶轴标签的字体大小?
任何建议都将不胜感激!
答案 0 :(得分:0)
似乎使用ax1.xaxis.get_major_ticks()
遍历标签只会为您提供底部标签的引用。要设置顶部和底部标签的字体大小,set_tick_params
对我有效。
import numpy as np
import matplotlib.pyplot as plt
f =plt.figure(figsize = (12,6))
ax1 = plt.subplot(211)
ax1.plot(np.arange(0,10,1),np.arange(0,10,1))
ax1.xaxis.set_ticks_position('both')
ax1.yaxis.set_ticks_position('both')
ax1.tick_params(axis='x', which='both', labeltop ='on',labelbottom = 'off')
ax1.xaxis.set_tick_params(labelsize=24)
plt.show()
答案 1 :(得分:0)
使用关键字参数labelsize
而不是遍历刻度。
f = plt.figure(figsize = (12, 6))
ax1 = plt.subplot(211)
ax1.plot(np.arange(0, 10, 1),np.arange(0, 10, 1))
ax1.xaxis.set_ticks_position('both')
ax1.yaxis.set_ticks_position('both')
ax1.tick_params(axis='x', which='both',
labeltop='on', labelbottom='off', labelsize=27)
ax2 = plt.subplot(212)
ax2.plot(np.arange(0, 10, 1), np.arange(0, 10, 1))
ax2.xaxis.set_ticks_position('both')
ax2.yaxis.set_ticks_position('both')
ax2.tick_params(axis='x', which='both',
labeltop='off', labelbottom='on', labelsize=14)