我有一堆MM / DD / YYYY
形式的日期。我使用解析器将它们转换为类似于datetime.datetime(YYYY, MM, DD, 0, 0)
的内容。
我在数组y
中具有与每个日期相对应的数据,并希望将两个数组相互绘制。使用matplotlib.dates.date2num
我将它们绘制为
x= matplotlib.dates.date2num(dates)
plot_date(dates,y)
当我这样做时,我得到以下情节
如我所希望的那样,它看起来像一个时间序列。
我怎样才能解决这个问题
最佳答案
大概您正在阅读的日期和数据没有按时间顺序排列,在这种情况下,您需要先对它们进行排序,然后再将它们传递给plot_date()
:
s = np.argsort(dates)
plot_date(dates[s],y[s])
无论您对
datetime
实例(您的dates
)或其数值等效项(您的x
)的列表/数组进行排序,这都应该起作用。关于python - 用plot_date绘制日期,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/29325734/