matplotlib の図で、ax1.set_xticklabels()
を使って目盛りラベルのフォントサイズを小さくするにはどうしたらいいですか?
さらに、それを水平から垂直に回転させるにはどうしたらよいでしょうか?
実はもっと簡単な方法があるんです。今、見つけたんです。
import matplotlib.pyplot as plt
# We prepare the plot
fig, ax = plt.subplots()
# We change the fontsize of minor ticks label
ax.tick_params(axis='both', which='major', labelsize=10)
ax.tick_params(axis='both', which='minor', labelsize=8)
これは、あなたの質問の label
のサイズ部分に対する答えに過ぎませんが。
MPLの新しいバージョンでは、このタスクのショートカットがあることに注意してください。この質問に対する他の回答に例が示されています: https://stackoverflow.com/a/11386056/42346
以下のコードは説明のためのものであり、必ずしも最適化されていないかもしれません。
import matplotlib.pyplot as plt
import numpy as np
def xticklabels_example():
fig = plt.figure()
x = np.arange(20)
y1 = np.cos(x)
y2 = (x**2)
y3 = (x**3)
yn = (y1,y2,y3)
COLORS = ('b','g','k')
for i,y in enumerate(yn):
ax = fig.add_subplot(len(yn),1,i+1)
ax.plot(x, y, ls='solid', color=COLORS[i])
if i != len(yn) - 1:
# all but last
ax.set_xticklabels( () )
else:
for tick in ax.xaxis.get_major_ticks():
tick.label.set_fontsize(14)
# specify integer or one of preset strings, e.g.
#tick.label.set_fontsize('x-small')
tick.label.set_rotation('vertical')
fig.suptitle('Matplotlib xticklabels Example')
plt.show()
if __name__ == '__main__':
xticklabels_example()
。
別の選択肢。
2つのプロットを並べて配置しているので、ティックラベルを個別に調整したいと思います。
上記の解決策は近いものでしたが、私にはうまくいきませんでした。 このmatplotlib ページから解決策を見つけました。
ax.xaxis.set_tick_params(labelsize=20)
これはトリックを行い、要点を直視しました。 私の使用例では、調整が必要なのは右側のプロットでした。 新しいティックラベルを作成してから左側のプロットでは、ラベルをセットするのと同じプロセスでフォントを調整できました。
すなわち。
ax1.set_xticklabels(ax1_x, fontsize=15)
ax1.set_yticklabels(ax1_y, fontsize=15)
したがって、私は正しいプロットに使用しました。
ax2.xaxis.set_tick_params(labelsize=24)
ax2.yaxis.set_tick_params(labelsize=24)
微妙にマイナー。.. 知っている。.. しかし、これが誰かを助けることを願っています:)。
マグニチュードラベルのオーダーのフォントサイズを調整する方法を知っている人がいる場合は、ボーナスポイント。
。。