如何使用matplotlib

时间:2019-05-23 20:46:32

标签: python python-3.x pandas matplotlib

我有一个要绘制的具有超过100000行的序列。我的图形的x轴有问题。由于我的x轴是由多个日期组成的,因此,如果将所有日期都绘制出来,将看不到任何内容。

如何选择在x轴上的每个x中仅显示1个?

下面是一个代码示例,该代码生成带有丑陋x轴的图形:

sr = pd.Series(np.array(range(15)))
sr.index = [ '2018-06-' + str(x).zfill(2) for x in range(1,16)]
Out : 
2018-06-01     0
2018-06-02     1
2018-06-03     2
2018-06-04     3
2018-06-05     4
2018-06-06     5
2018-06-07     6
2018-06-08     7
2018-06-09     8
2018-06-10     9
2018-06-11    10
2018-06-12    11
2018-06-13    12
2018-06-14    13
2018-06-15    14

fig = plt.plot(sr)
plt.xlabel('Date')
plt.ylabel('Sales')

1 个答案:

答案 0 :(得分:1)

使用new T()可以达到预期的效果:

在您的示例中:

xticks

输出:

enter image description here

此外,如果要设置刻度数,则可以使用sr = pd.Series(np.array(range(15))) sr.index = [ '2018-06-' + str(x).zfill(2) for x in range(1,16)] fig = plt.plot(sr) plt.xlabel('Date') plt.xticks(sr.index[::4]) #Show one in every four dates plt.ylabel('Sales')

locator_params

输出:

enter image description here