使用子图旋转x刻度标签

时间:2013-11-08 17:08:57

标签: python matplotlib

正如标题所描述的那样,我使用子图方法制作条形图。一切运作良好,但我无法弄清楚如何旋转x刻度标签。我的图表代码是:

f, axarr = plt.subplots(2, sharex=True)

axarr[0].set_xticklabels(file2_temp)
axarr[0].xaxis.set_ticks(y)
axarr[0].bar(np.arange(len(file_temp)), stddev_temp, align='center', alpha=0.4)


axarr[1].bar(np.arange(len(file_RH)), stddev_RH, align='center', alpha=0.4)
axarr[1].tick_params(axis='x', pad=30)
plt.show()

其中file2_temp和RH是列表,stddev_temp和RH是我的数据。

任何帮助都会很棒。谢谢!

1 个答案:

答案 0 :(得分:7)

您可以使用setp旋转刻度。

以下是您帖子中修改的示例:

import matplotlib.pyplot as plt
from numpy.random import rand
import numpy as np

f, axarr = plt.subplots(2, sharex=True)

axarr[0].bar(np.arange(1,11), rand(10), align='center', alpha=0.4)
axarr[1].bar(np.arange(1,11), rand(10), align='center', alpha=0.4)

axarr[1].tick_params(axis='x', pad=30)

plt.setp(plt.xticks()[1], rotation=45)

plt.show()

enter image description here