pandas:用标签绘制时间序列的多个列。

时间:2015-03-16 15:40:08

标签: python sqlite pandas

我是python和panda的新手。我正在尝试使用python panda绘制图形。到目前为止,我能够读取sqlite数据库。

import sqlite3
import pandas as pd


conn = sqlite3.connect('demo.db')
df = pd.read_sql("SELECT * FROM ABC", conn)
df.head()

我得到了这个结果。 enter image description here

这里的时间戳仅为一年。我想为所有类型绘制线图(年份与价值)。

感谢您的帮助

1 个答案:

答案 0 :(得分:0)

如果不将时间戳转换为日期时间,您只需进行情节调用

from pylab import *
import pandas as pd
import sqlite3 

# load in your dataframe viy current code
conn = sqlite3.connect('demo.db')
df = pd.read_sql('SELECT * FROM ABC',conn)

# make your plot
fig = figure( figsize=(6.5,3.5) )
ax  = fig.add_subplot(111)

ax.plot(df.TimeStamp, df.Value)
ax.legend( ('Value') )

现在真正的问题是你的时间戳是做什么的? EdChum已经解释了如何转换为datetime,但是看看你的数据,我发现你只有一个唯一的TimeStamp值,所以如果你的x轴是时间,你将把所有东西叠加在其余的上面。但是,如果你真的想要一个时间与价值的关系(你表示这个,但我认为你错误输入了)那么这将更有意义,你需要在ax.plot命令中切换df.TimeStamp和df.Value上方。