我有一些看起来像data = pd.read_csv(....)
的数据:
Year Month HOUR NAME RATE
2010 1 0 Big 222
2010 1 0 Welsch Power 434
2010 1 0 Cottonwood 124
2010 1 1 Big 455
2010 1 1 Welsch Power 900
2010 1 1 Cottonwood 110
.
.
.
2010 2 0 Big 600
2010 2 0 Welsch Power 1000
2010 2 0 Cottonwood 170
.
.
2010 3 0 Big 400
2010 3 0 Welsch Power 900
2010 3 0 Cottonwood 110
您会看到HOUR(0-23)每个月(0-12)重复一次。我需要一种遍历值的方法,以便可以按小时(X轴)绘制每个月的 RATE (Y轴)每个名称。
我的尝试如下:
for name, data in data.groupby('NAME'):
fig = plt.figure(figsize=(14,23))
plt.subplot(211)
plt.plot(data['HOUR'], data['RATE'], label=name)
plt.xlabel('Hour')
plt.ylabel('Rate')
plt.legend()
plt.show()
plt.close()
这是可行的,但是因为HOUR在一个月内重复进行每次更改,所以图形在每次循环时最终返回0。我想将12个月中的每个月分别以不同的颜色显示在一张图表中的每个名称上,但是目前它们看起来像这样: