浮动格式:绘制strftime
我正在对MongoDB文档中的原始时间戳进行格式化。原始的时间戳看起来是这样的:
"timestamp" : ISODate("2013-03-06T17:10:29Z")
而格式化后的时间戳(在使用聚合后作为文档的_id):
"_id" : "06-03-13T17:10"
接下来,我想把“金额”(y轴)值和“_id”值(x轴)进行绘图。
我在格式化_id时遇到了一些问题,这样我就无法绘图了。
amount = [book["price"] for book in sorted["result"]]
time = [book["_id"] for book in sorted["result"]]
P.plot(amount, time)
P.show()
返回结果:
ValueError: invalid literal for float(): 06-03-13T15:36
1 个回答
1
你传给 plot
函数的是一个字符串,但我知道这不是有效的 x 轴格式。我很确定你应该使用原始的 datetime
对象,然后用 date2num
来格式化它们,这样才能传给 matplotlib。所以,如果你在其他地方用到 strftime
格式的东西,可能更合理的是把 date2num
的输出存储在你的映射中,而不是 strftime
的输出。
想了解更多具体信息和一些示例,可以查看 这篇帖子。