seaborn或matplotlib折线图,线颜色取决于变量

时间:2015-11-06 06:31:41

标签: pandas matplotlib seaborn

我有一个包含三列的pandas数据框,Date(时间戳),Color('红色'或蓝色')和{{1} }(INT)。

我目前正在使用以下代码获取折线图:

Value

我喜欢线条颜色取决于颜色'列。我怎样才能做到这一点?

我已经看到here类似于散点图的问题,但似乎我无法将相同的解决方案应用于时间序列折线图。

我的输出目前是:

enter image description here

我正在努力实现这样的目标(仅限一行,但有几种颜色)

enter image description here

1 个答案:

答案 0 :(得分:1)

正如我所说,你可以从我在评论中附上的link找到答案:

import matplotlib.pyplot as plt
import pandas as pd
Dates=['01/01/2014','02/01/2014','03/01/2014','03/01/2014','04/01/2014','05/01/2014']
Values=[3,4,6, 6,5,4]
Colors=['red','red', 'red', 'blue','blue','blue']
df=pd.DataFrame({'Dates':Dates,'Values':Values,'Colors':Colors})
df['Dates']=pd.to_datetime(df['Dates'],dayfirst=True)

grouped = df.groupby('Colors')
fig, ax = plt.subplots(1)

for key, group in grouped:
   group.plot(ax=ax, x="Dates", y="Values", label=key, color=key)

当换色时,您需要添加额外的点以使线连续