首页 > 解决方案 > 绘制从 Pandas 到 Seaborn 的多条线图

问题描述

我正在尝试使用 seaborn 从熊猫数据框中绘制多线图。下面是数据和所需图的 .csv。在 excel 中,我只是选择了整个数据集并交换了轴。从技术上讲,这有 110 行(行),但很多是不可见的,因为它们只包含 0。

具有 16 个 bin 的多线图

这是我的代码:

individual_burst_data = {'nb001':nb001, 'nb002':nb002, 'nb003':nb003, 'nb004':nb004, 'nb005':nb005, 'nb006':nb006, 'nb007':nb007, 'nb008':nb008, 'nb009':nb009, 'nb010':nb010, 'nb011':nb011, 'nb012':nb012, 'nb013':nb013, 'nb015':nb015, 'nb016':nb016 }
ibd_panda_conv = pd.DataFrame(individual_burst_data)

sns.lineplot(data = ibd_panda_conv, x = individual_burst_data, y =ibd_panda_conv)

其他来源似乎只提取一列,而我需要所有列。

我试图为 y 轴创建一个索引

index_data = list(range(0,len(individual_burst_data)))

但这也不起作用。

标签: pythonpandasplotseaborn

解决方案


seabornlineplot() 文档说:

传递整个宽格式数据集data为每列绘制一条单独的线

由于您希望每一行都有一行,因此您需要转置数据框,因此请尝试以下操作:

sns.lineplot(data=ibd_panda_conv.T, dashes=False)

推荐阅读