在matplotlib中添加填充到时间轴

时间:2016-04-14 19:02:44

标签: python matplotlib

我在python中的matplotlib中创建了一个散点图,其中x轴是日期,y轴是时间。我想在我的y轴上添加一些填充,这样点的顶部和底部都不会被切掉。我听说过将ax.ylim([x,y])设置为比最小值略小一点,并且比最大值稍微大一点,但这是不可能的,因为没有负时间或25:00这样的事情。

这就是图像现在的样子: enter image description here

正如您所看到的那样,顶部和底部的点都被切断了。

任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:2)

以下是如何在没有(以及添加数据限制)的情况下编写标签的方式,从而冒险在那里设置愚蠢的值:

import matplotlib.pyplot as plt
import numpy as np

x = np.random.randint(2004,2017,500)
y =np.clip(np.random.normal(13,7,500),0,24)

plt.scatter(x,y)
plt.xticks(range(2004,2017,3),[str(i) for i in range(2004,2017,3)],rotation=45)
plt.yticks(range(0,24,3),[str(i)+':00' for i in range(0,24,3)])

plt.xlim(2002,2019)
plt.ylim(-3,28)
plt.show()

,结果是:

Controlling the labels to have a pad effect