gpt4 book ai didi

python - Pandas:将多个时间序列 DataFrame 绘制成一个图

转载 作者:太空狗 更新时间:2023-10-29 20:53:33 27 4
gpt4 key购买 nike

我有以下 Pandas 数据框:

     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

这是一个包含多个时间序列问题数据的数据框,从 min=1max=35。每个 Group 都有一个这样的时间序列。

我想根据 1 到 35 的 x 轴绘制每个单独的时间序列 A 到 Z。y 轴将是每次的 block

我正在考虑使用类似 Andrews Curves plot 的东西, 这会将每个系列相互绘制。每个“色调”将被设置为不同的组。 (欢迎提出其他想法。)

enter image description here

我的问题:如何格式化此数据框以绘制多个系列?列应该是 GroupAGroupB 等吗?

如何让数据框采用以下格式:

time GroupA blocksA GroupsB blocksB GroupsC blocksC....

这是所示 Andrews 图的正确格式吗?

编辑

如果我尝试:

df.groupby('Group').plot(legend=False)

x 轴完全不正确。所有时间序列都应该从 0 到 35 绘制,全部在一个系列中。

enter image description here

我该如何解决这个问题?

最佳答案

您可以将数据重组为数据透视表:

df.pivot_table(index='time',columns='Group',values='blocks',aggfunc='sum').plot()

关于python - Pandas:将多个时间序列 DataFrame 绘制成一个图,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/38197964/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com