我尝试使用一组数据绘制图表。 y轴没问题,它是简单的浮点数。
问题是x轴:它的数据按日期时间格式化为'%Y-%m-%d %H:%M:%S'
。当试图绘制时,它当然发生了无浮动的错误......我尝试了很多方法,它仍然无法工作......
所以到目前为止输入的是两个数组:x是['2016-02-05 17:14:55', '2016-02-05 17:14:51', '2016-02-05 17:14:49', ...]
。 y是['35.764299', '20.3008', '36.94704', ...]
答案 0 :(得分:6)
您可以使用DateFormatter
,如下所示:
import matplotlib
import matplotlib.pyplot as plt
from datetime import datetime
x_orig = ['2016-02-05 17:14:55', '2016-02-05 17:14:51', '2016-02-05 17:14:49']
x = [datetime.strptime(d, '%Y-%m-%d %H:%M:%S') for d in x_orig]
y = ['35.764299', '20.3008', '36.94704']
xs = matplotlib.dates.date2num(x)
hfmt = matplotlib.dates.DateFormatter('%H:%M:%S')
fig = plt.figure()
ax = fig.add_subplot(1,1,1)
ax.xaxis.set_major_formatter(hfmt)
plt.setp(ax.get_xticklabels(), rotation=15)
ax.plot(xs, y)
plt.show()