我在python中的matplotlib中创建了一个散点图,其中x轴是日期,y轴是时间。我想在我的y轴上添加一些填充,这样点的顶部和底部都不会被切掉。我听说过将ax.ylim([x,y])
设置为比最小值略小一点,并且比最大值稍微大一点,但这是不可能的,因为没有负时间或25:00这样的事情。
正如您所看到的那样,顶部和底部的点都被切断了。
任何帮助将不胜感激!
答案 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()
,结果是: