python - 为具有代表 'group' 的多条线的图表创建图例

标签 python pandas matplotlib graph

从 pandas 'g' 的数据框中,我有以下数据:

index    Speaker          Date        ARI     Flesch    Kincaid  
0        Alan Greenspan   1996  15.234878  34.669383  14.533217   
1        Alan Greenspan   1997  16.235605  31.415163  15.335869    
11       Alan S. Blinder  2002  14.299481  41.847836  13.681203         
12       Alan S. Blinder  2003        NaN        NaN        NaN     
14       Alice M. Rivlin  1996  15.828971  33.394999  15.211662  

通过下面的代码,我能够生成以下图表:

s = data
s['Date'] =  pd.to_datetime(s['Date'], format='%Y-%m-%d %H:%M:%S')
s = s.set_index(['Date'])
grouped = s.groupby('Speaker').resample('AS').mean()
grouped = grouped.reset_index()
g = grouped.reset_index()
g["Date"] = g["Date"].dt.year
g.plot(x='Date', y='Flesch', colormap = cm.cubehelix, legend=True, 
title="Auto", figsize=(12,10))

My current graph

我希望图表中的每条线包含不同的颜色,并放置一个图例来说明与每条线关联的“扬声器”。任何帮助将不胜感激!

最佳答案

让我们尝试这样的事情:

df.pivot_table(values='Flesch',index='Date',columns='Speaker').reset_index().plot(x='Date',colormap= cm.cubehelix)

enter image description here

(我刚刚添加了该标记来显示测试数据中的这些单点。)

关于python - 为具有代表 'group' 的多条线的图表创建图例,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44553937/

相关文章:

python - "hard"使用Python进行图像分割的监督

python - Pandas 数据帧 : alignment

python - 基于另一个列过滤器在列中进行空/重复检查

python - plt.plot()、object.plot() 之间有什么区别

python - Matplotlib 文本不采用数组值

python - 使用ctypes从Python获取C中自定义数据类型的地址

python - 有没有办法使用opencv中的阈值函数来检测小线

python - 如何使用字典作为标题来使用 pd.apply() 为数据框分配值

Python matplotlib 区间

python - Django 1.8 RC1 : ProgrammingError when creating database tables