2011-02-14 24 views
2

我想繪製一個每日描述圖:小時與濃度。我正在使用matplotlib和datetime模塊。用python繪製日常描述

當我寫:

import datetime 
from pylab import * 
b = [datetime.time(12,0), datetime.time(13,0)] 
c = [4,5] 
plot(b,c) 
show() 

...這是行不通的。

我必須使用datetime對象,而不是時間的對象能夠使劇情:

a = [datetime.datetime(2005,5,10,12), datetime.datetime(2005,5,10,13)] 
c = [4,5] 
plot(a,c) 
show() 

但我真的希望能夠使劇情的使用時間對象,而不是日期時間... 任何想法?

回答

3

看一看在matplotlib文件的位置:

http://matplotlib.sourceforge.net/api/dates_api.html

的問題是,matplotlib只知道如何將DateTime對象轉換爲浮動和它看起來並不存在對相同的支持datetime.time

編輯: 一個可能的解決方法就是獲得一個默認的日期(「今天」),然後用你想,如果你不關心日期的具體時間結合起來:

import datetime 
from pylab import * 
d = datetime.date.today() 
tt = [datetime.time(12,0), datetime.time(13,0)] 
b = [] 
for t in tt: 
    b.append(datetime.datetime.combine(d,t)) 
c = [4,5] 
plot(b,c) 
show() 
+0

我會做的。感謝喬希的幫助。 – carla 2011-02-15 09:10:32

0

時間返回秒數。

>>>print time.time() 
1297696979.78 

>>>print date.fromtimestamp(today) 
2011-02-14 

今天是一個變量我設置等於當前time.time()。我不太清楚爲什麼你要在time()函數中輸入變量。

+0

感謝您的回答。我使用的類datetime.time (日期時間模塊),它具有hour,minute,second,microsecond和tzinfo屬性。我只輸入小時和分鐘值。 – carla 2011-02-14 15:32:53