使用基于列值的不同曲线绘制来自Pandas Dataframe的数据

时间:2017-12-15 09:16:35

标签: python pandas plot

我有一个Pandas数据框,如下所示:

City      timestamp HUMI    year
Beijing   10100     43.0    2010
Chengdu   10100     81.2    2010
Beijing   10101     47.0    2010
Chengdu   10101     86.99   2010
Beijing   10102     43.0    2010
Chengdu   10102     86.99   2010
Beijing   10103     55.0    2010
Chengdu   10103     86.89   2010
Beijing   10104     51.0    2010
Chengdu   10104     86.79   2010
Beijing   10105     47.0    2010
Chengdu   10105     93.13   2010

我想将HUMI描绘为时间戳的函数,并且每个城市都有一条曲线。是否有一个单行命令可以让我这样做?我已经检查了Pandas visualization page并且没有看到它(或者想念它)。

提前致谢。

1 个答案:

答案 0 :(得分:1)

您似乎需要pivotplot

df.pivot('timestamp','City','HUMI').plot()

替代unstack

df.set_index(['timestamp','City'])['HUMI'].unstack().plot()

graph

详情:

print (df.pivot('timestamp','City','HUMI'))
City       Beijing  Chengdu
timestamp                  
10100         43.0    81.20
10101         47.0    86.99
10102         43.0    86.99
10103         55.0    86.89
10104         51.0    86.79
10105         47.0    93.13