2013-03-11 71 views
0

我正在格式化MongoDB文檔中的原始時間戳。原來那些看起來像這樣:浮點格式化:繪製strftime

"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

你傳遞的plot功能的字符串,它是不是一個有效的x軸格式據我所知。我很確定你想要你的原始datetime對象,然後使用date2num來格式化它們以傳遞給matplotlib。因此,根據是否將strftime格式化的東西用於其他任何內容,將date2num的輸出存儲在映射中而非strftime的輸出中可能更有意義。

請參閱this post以獲得更多特異性並鏈接到某些示例。

+0

謝謝,但我將如何設法刪除我的日期時間對象中的秒? – Julia 2013-03-11 15:47:26

+0

@Julia你需要從日期時間中刪除秒,還是隻從格式字符串中刪除?你應該能夠給matplotlib一個'strftime'格式的字符串來使用。如果您需要從日期時間中除去秒,那只是'dt = dt.replace(second = 0)'。 – 2013-03-11 15:58:48