我的数据框是针对列“IdBox”= 4中的某个值。它只帮助我为“IdBox”= 4做一个数据图。 我无法找到一种方法来让函数在IdBox值发生变化时更快速地绘制这个函数。我的IdBox值范围从4到9,这意味着6个图表。从数据框绘制python
chaudiere4 = yy[(yy.NameDeviceType== "Chaudière_logement") & (yy.IdBox == 4.0)]
In [898]: chaudiere4
Out[898]:
UnitDeviceType NameDeviceType IdBox IdDeviceValue ValueDeviceValue weekday hour ONOFF
DateDeviceValue
2015-11-27 17:54:00 On/Off Chaudière_logement 4.0 536448.0 On 4.0 17.0 1
2015-11-27 17:54:00 On/Off Chaudière_logement 4.0 536449.0 Off 4.0 17.0 0
2015-11-27 17:54:00 On/Off Chaudière_logement 4.0 536450.0 On 4.0 17.0 1
2015-11-27 17:54:00 On/Off Chaudière_logement 4.0 536451.0 Off 4.0 17.0 0
2015-11-27 18:09:00 On/Off Chaudière_logement 4.0 536453.0 On 4.0 18.0 1
我创建了一个名为ONOFF的列,并按照意思进行分组来做图。
chaudiere4 = chaudiere4['ONOFF'].groupby(chaudiere4['hour']).mean()
chaudiere4.plot(kind='bar')
plt.title("Chaudiere ON/OFF")
plt.xlabel('hour')
plt.legend('ONOFF')
plt.axis([0, 24, 0, 1])
plt.show()
有没有办法用一个函数很快做到这一点,而不是更改数据框来chaudiere5为Idbox = 5和chaudiere6为Idbox = 6?
要绘制的曲线图每个chaudière? – Dadep
事实上,我正在寻找一种快速的方式来做到这一点,而不是重复这整个代码6次 – cloclo
@cloclo,是[that](http://stackoverflow.com/questions/42493407/plot-python-from-dataframe#评论72126558_42493491)你想要什么? – MaxU