【问题标题】:Matplotlib Line Graph from Pivot Table: Custom Color of Lines数据透视表中的 Matplotlib 线图:线的自定义颜色
【发布时间】:2016-05-17 16:19:16
【问题描述】:

鉴于以下情况:

import pandas as pd
import numpy as np
%matplotlib inline
df = pd.DataFrame(
        {'YYYYMM':[201603,201503,201403,201303,201603,201503,201403,201303],
         'Count':[5,6,2,7,4,7,8,9],
         'Group':['A','A','A','A','B','B','B','B']})
df['YYYYMM']=df['YYYYMM'].astype(str).str[:-2]
t=df.pivot_table(df,index=['YYYYMM'],columns=['Group'],aggfunc=np.sum)

fig, ax = plt.subplots(1,1)
t.plot(ax=ax)

t.plot() 中是否有参数可以让我指定每条线的颜色?

提前致谢!

【问题讨论】:

    标签: python-3.x pandas matplotlib pivot-table linegraph


    【解决方案1】:

    您可以提供线条样式:

    t.plot(ax=ax, style=['yellow', 'red'])
    

    【讨论】:

    • 超级主意,您可以更改颜色全名的答案。 ;) 这似乎是更好的解决方案。
    • 是的,单字母版本只适合快速测试。
    【解决方案2】:

    你可以使用:

    ax.set_color_cycle(['red', 'black'])
    

    示例:

    df = pd.DataFrame(
            {'YYYYMM':[201603,201503,201403,201303,201603,201503,201403,201303],
             'Count':[5,6,2,7,4,7,8,9],
             'Group':['A','A','A','A','B','B','B','B']})
    df['YYYYMM']=df['YYYYMM'].astype(str).str[:-2]
    t=df.pivot_table(df,index=['YYYYMM'],columns=['Group'],aggfunc=np.sum)
    
    fig, ax = plt.subplots(1,1)
    ax.set_color_cycle(['red', 'black'])
    t.plot(ax=ax)
    

    编辑:

    非常有趣,用颜色的全名似乎更好,因为它与 Mike 1. answer 不同:

    t.plot(ax=ax, style=['yellow', 'red'])
    

    【讨论】:

    • 嗨,Jezrael,它抛出了使用 set_prop_cycle 的弃用警告,但无论哪种方式,它似乎都不适合我。如果有区别,我正在使用 Python 3.5。
    • 有意思,我也用python 3.5。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-03
    • 2018-02-28
    相关资源
    最近更新 更多