Как установить цвет на графике с накоплением по определенному уровню в кадре данных с помощью multiIndex? - PullRequest
0 голосов
/ 07 ноября 2018

У меня есть фрейм данных с MultiIndex, который я хочу построить на графике с накоплением. Я хочу установить цвет для каждой области (MultiIndex), например: 1) A, C1; 2) А, С2; 3) А, С3, 4) В, С1; 5) В, С2; 6) B, C3.

                         MultiIndex((levels=[['A', 'B'], ['C1, C2', 'C3']]
                         labels=[[0, 0, 0, 1, 1, 1], [0, 1, 2, 0, 1, 2]],
                         names=['plant', 'product'])
df

plant   A                                   B
product C1          C2          C3          C1          C2          C3
2013    91.819787   169.067457  96.622599   101.945246  156.474884  4.034889
2014    90.717770   169.067457  88.176969   101.945246  156.474884  4.034889
2015    90.717770   168.782780  87.464522   101.945246  156.474884  4.034889
2016    90.717770   166.585114  87.205738   101.945246  156.474884  4.034889
2017    88.869848   165.472301  86.936643   101.945246  156.474884  4.034889
2018    88.628546   165.336691  82.474329   101.945246  156.474884  4.034889
2019    81.971873   164.165038  82.258477   101.945246  156.474884  4.034889
2020    81.432714   162.372458  82.054170   101.945246  156.474884  4.034889
2021    80.575571   162.283999  82.050511   101.945246  156.474884  4.034889

Я пытался

ax = df.plot(kind='area', rot= 0, stacked=True, figsize=(12, 5), color= 
{"b","darkblue", "olive", "green", "pink", "cornflowerblue"}),

но в функции цвета я хочу явно установить MultiIndex. Допустим, для [A, C1] я хочу темно-синий и так далее. Как я могу это сделать?

...