我想制作每日个人资料图:小时与浓度。我正在使用matplotlib和datetime模块。
当我写:
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()
但我真的希望能够使用时间对象而不是日期时间制作情节...... 有什么想法吗?
答案 0 :(得分:3)
在这里查看matplotlib文档:
http://matplotlib.sourceforge.net/api/dates_api.html
问题是matplotlib只知道如何将datetime对象转换为float,而且看起来没有相同的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()
答案 1 :(得分:0)
时间返回秒数。
>>>print time.time()
1297696979.78
>>>print date.fromtimestamp(today)
2011-02-14
今天是我设置的变量,等于当前的time.time()。我不太确定你为什么要在time()函数中输入变量。