我有以下熊猫数据框:
time Group blocks
0 1 A 4
1 2 A 7
2 3 A 12
3 4 A 17
4 5 A 21
5 6 A 26
6 7 A 33
7 8 A 39
8 9 A 48
9 10 A 59
.... .... ....
36 35 A 231
37 1 B 1
38 2 B 1.5
39 3 B 3
40 4 B 5
41 5 B 6
.... .... ....
911 35 Z 349
这是一个包含多个时间序列ques数据的数据帧,从min=1
到max=35
。每个Group
都有这样的时间序列。
我想绘制每个时间序列A到Z相对于1到35的x轴。y轴每次都是blocks
。
我正在考虑使用类似于Andrews Curves plot的东西,它可以将每个序列相互对应。每个“色调”将设置为不同的组。(欢迎其他想法。)
我的问题是:如何格式化这个数据帧来绘制多个序列?列应该是GroupA
、GroupB
等吗。?
如何使数据帧的格式为:
time GroupA blocksA GroupsB blocksB GroupsC blocksC....
如图所示,这是安德鲁斯绘图的正确格式吗?
编辑
如果我尝试:
df.groupby('Group').plot(legend=False)
x轴完全不正确。所有时间序列应绘制在0到35之间,全部为一个序列。
我该怎么解决?
可以将数据重新构造为透视表:
看看这个变种。第一个是安德鲁斯曲线,第二个是由一列
Month
组成的多行图。数据帧data
包括三列Temperature
、Day
和Month
:当你绘制安德鲁斯曲线时,你的数据被保存到一个函数中。这意味着安德鲁斯的曲线由函数紧密地表示,这意味着相应的数据点也将紧密地放在一起。
相关问题 更多 >
编程相关推荐