带有堆叠数据的Python Pandas子图

多库马达

我想生成一个熊猫数据框的分组数据图(或子图)。我认为这应该是基本的东西-我只是缺少一些东西。我有从下面提供的数据示例准备的堆叠输入数据。我想为每个上层数据生成如下图的图表:

上层数据A的示例图

在这里,我有一些示例数据(我在下面粘贴了我正在使用的示例.csv数据)。这些数据以数据信息,时间,数据的“堆叠”形式出现。数据信息描述了特定数据点的类别和子类别。

import pandas as pd
import re
import matplotlib.pyplot as plt

df=pd.read_csv('.....TestData.csv',index_col='T')
df=df.stack(0).reset_index(1)
df.columns=['fullType','data']
#And at this point, this is pretty much the form of my actual data

#So I split it up a bit to try to get columns for different data groupings
regexStr='~'

def upperParser(row):
    label=re.split(regexStr,row['fullType'])
    return label[1]
def lowerParser(row):
    label=re.split(regexStr,row['fullType'])
    return label[2]

df['upperLevel']=df.apply(upperParser,axis=1)
df['lowerLevel']=df.apply(lowerParser,axis=1)
df['time']=df.index


df=df.reset_index(drop=True)

plt.figure();
df.plot();

#And here is one of many attempts... I just seem to be missing something that should be simple:

for grp in df.groupby('upperLevel'):
for key,grp in df.groupby('lowerLevel'):
    plt.plot(x='time',y=grp['data'],label=key)
plt.show()

任何方向都将不胜感激。我不关心尝试保留任何特定形式。我的最终目标是使所有upperLevel类别的曲线图(表示A =(0,1),B =(0,2)),并使用mpl3d查看底层副区(像这样,但与每个子类别1,2, 3堆叠为子图)。但首先我想。

样本数据:

T   Col~A~1~    Col~A~2~    Col~A~3~    Col~B~1~    Col~B~2~    Col~B~3~
1   1   0.5 0.5 0.5 0.25    0.25
1.5 2   1   1   1   0.5 0.5
2   3   1.5 0.5 1.5 0.75    0.25
2.5 4   2   1   2   1   0.5
3   5   2.5 0.5 2.5 1.25    0.25
3.5 6   3   1   3   1.5 0.5
4   7   3.5 0.5 3.5 1.75    0.25
4.5 8   4   1   4   2   0.5
5   9   4.5 0.5 4.5 2.25    0.25
5.5 10  5   1   5   2.5 0.5
6   11  5.5 0.5 5.5 2.75    0.25
6.5 12  6   1   6   3   0.5
7   13  6.5 0.5 6.5 3.25    0.25
7.5 14  7   1   7   3.5 0.5
8   15  7.5 0.5 7.5 3.75    0.25
8.5 16  8   1   8   4   0.5
9   17  8.5 0.5 8.5 4.25    0.25
9.5 18  9   1   9   4.5 0.5
10  19  9.5 0.5 9.5 4.75    0.25
马吕斯

一些提示:

  • df.groupby()返回(group_name, group)元组,因此在尝试遍历各组时要小心。
  • 通常,pyplot如果pandas绘图方法涵盖了所需的绘图,则您不想手动使用
  • pandas 绘制方法通常会在要绘制的数据框中为每一列生成一条单独的线,因此,如果可以重新排列数据以将数据源放在单独的列中,则可以轻松获取所需的图。
  • pandas 默认情况下,绘图方法会将数据框的索引用作x轴。

也就是说,您可以使用以下方法生成所需的图:

for group_name, grp in df.groupby('upperLevel'):
    plot_table = grp.pivot(index='time', columns='lowerLevel', values='data')
    plot_table.plot()

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

带有堆叠数据的Python Pandas子图

来自分类Dev

带有花式堆叠的Pandas数据透视表

来自分类Dev

带有熔融数据的高包机中的堆叠条形图

来自分类Dev

如何使用Pandas数据框为子图设置ylim?

来自分类Dev

如何使用 Pandas python 构建直方图子图

来自分类Dev

Python Pandas:绘制100%堆叠图问题

来自分类Dev

Python提取(带有pandas数据框)

来自分类Dev

如何在python中为具有多个索引的数据框制作堆叠图?

来自分类Dev

带有熊猫的多个堆叠条形图

来自分类Dev

创建带有子类别的堆叠图

来自分类Dev

在 Python 中给定 Pandas 数据框绘制多个堆叠条形图

来自分类Dev

带有子图的多个标题(字幕)

来自分类Dev

仅带有ylabel的子图

来自分类Dev

带有子图聚合的递归查询

来自分类Dev

带有子图聚合的递归查询

来自分类Dev

带有多条轨迹的子图

来自分类Dev

循环的python子图

来自分类Dev

在Python Pandas中堆叠多级数据透视表的有效方法是什么?

来自分类Dev

如何从一个数据框中绘制多个带有填充条形图的堆叠条形图

来自分类Dev

如何用pandas软件包为python制作的子图清除boxplot的默认字幕

来自分类Dev

Matlab:带有子传说的子图

来自分类Dev

创建堆叠的条形图,每个堆叠具有单个数据集

来自分类Dev

使用python绘制子图箱图

来自分类Dev

为什么我不能以绘制直方图子图的方式为来自 Pandas 的 DataFrame (Python) 的数据集在一个图中绘制多个散点子图?

来自分类Dev

带有复杂条件的python pandas重复数据删除

来自分类Dev

带有字典python的pandas数据帧中的StopIteration问题

来自分类Dev

Python pandas数据框切片,带有if条件

来自分类Dev

带有列名列表的 Python Pandas 索引数据框

来自分类Dev

Python子图固定间距

Related 相关文章

  1. 1

    带有堆叠数据的Python Pandas子图

  2. 2

    带有花式堆叠的Pandas数据透视表

  3. 3

    带有熔融数据的高包机中的堆叠条形图

  4. 4

    如何使用Pandas数据框为子图设置ylim?

  5. 5

    如何使用 Pandas python 构建直方图子图

  6. 6

    Python Pandas:绘制100%堆叠图问题

  7. 7

    Python提取(带有pandas数据框)

  8. 8

    如何在python中为具有多个索引的数据框制作堆叠图?

  9. 9

    带有熊猫的多个堆叠条形图

  10. 10

    创建带有子类别的堆叠图

  11. 11

    在 Python 中给定 Pandas 数据框绘制多个堆叠条形图

  12. 12

    带有子图的多个标题(字幕)

  13. 13

    仅带有ylabel的子图

  14. 14

    带有子图聚合的递归查询

  15. 15

    带有子图聚合的递归查询

  16. 16

    带有多条轨迹的子图

  17. 17

    循环的python子图

  18. 18

    在Python Pandas中堆叠多级数据透视表的有效方法是什么?

  19. 19

    如何从一个数据框中绘制多个带有填充条形图的堆叠条形图

  20. 20

    如何用pandas软件包为python制作的子图清除boxplot的默认字幕

  21. 21

    Matlab:带有子传说的子图

  22. 22

    创建堆叠的条形图,每个堆叠具有单个数据集

  23. 23

    使用python绘制子图箱图

  24. 24

    为什么我不能以绘制直方图子图的方式为来自 Pandas 的 DataFrame (Python) 的数据集在一个图中绘制多个散点子图?

  25. 25

    带有复杂条件的python pandas重复数据删除

  26. 26

    带有字典python的pandas数据帧中的StopIteration问题

  27. 27

    Python pandas数据框切片,带有if条件

  28. 28

    带有列名列表的 Python Pandas 索引数据框

  29. 29

    Python子图固定间距

热门标签

归档