如何绘制多个折线图(意大利面条图)?尝试时出现“无效的RGBA参数:2000”错误?

时间:2019-05-17 12:25:30

标签: python pandas matplotlib

我有一个下面的数据框so5b(不完整)。

数据框具有从2000年到2015年每月的SO2值

    year    month   so2
1   2000    11  17.3
2   2000    12  14.488888888888892
3   2001    1   14.377777777777778
4   2001    2   17.555555555555557
5   2001    3   13.955555555555556
6   2001    4   12.299999999999999
7   2001    5   11.0
8   2001    6   11.81111111111111
9   2001    7   10.525
10  2001    8   11.512500000000003
11  2001    9   11.212499999999999
12  2001    10  12.1625
13  2001    11  14.2125
14  2001    12  13.4875

我想绘制多个折线图-每年so2值按月的月度趋势。即输出必须像下面这样

Required output chart

现在要获得我在多个链接中引用的以下我尝试过的情节

so5b.info()
import matplotlib.pyplot as plt
fig, ax = plt.subplots()
for key, grp in so5b.groupby(['year']):
    ax = grp.plot(ax=ax, kind='line', x='month', y='so2', c=key, label=key)
    plt.show()

当我执行以上操作时,出现以下错误

ValueError: Invalid RGBA argument: 2000

也不确定我是否应该按年份分组,即so5b.groupby(['year']),因为每年每个月都会对数据进行排序。

我在下面提到了多个链接,但似乎并不能解决我的问题

ValueError: Invalid RGBA argument: What is causing this error?

帮助表示赞赏。 TIA

1 个答案:

答案 0 :(得分:2)

您可以在plot命令中放置import {Person} from './Person'; let PersonConstructor: typeof Person = Person; // create a new instance but also access the static variables const p: Person = new PersonConstructor(); PersonConstructor.getDatabaseId(); // "property does not exist" 。这就是错误c=key的出处,key=2000不理解颜色代码plt。所以:

2000

给您

enter image description here

或者您可以使用fig, ax = plt.subplots(figsize=(10,6)) for key, grp in so5b.groupby('year'): ax = grp.plot(ax=ax, kind='line', x='month', y='so2', label=key) plt.show()

seaborn