Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/358.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 如何使用列名作为x轴在seaborn中生成分组条形图?_Python_Dataframe_Seaborn - Fatal编程技术网

Python 如何使用列名作为x轴在seaborn中生成分组条形图?

Python 如何使用列名作为x轴在seaborn中生成分组条形图?,python,dataframe,seaborn,Python,Dataframe,Seaborn,当我得到答案时,我会踢自己的脚,但是我特别关注如何塑造我的数据框架,以便我可以使用seaborn的分组条形图功能。特别地,我希望除了标签之外的所有列都成为x轴上的功能,标签列用于识别每个功能中的分组。设置hue=“Label”仅允许我选择一列进行分析。我也尝试过将Label列设置为索引,但仍然停留在如何在同一个图上绘制所有列的问题上 import pandas as pd x={'COL1A1': {0: 0.2833579201349264, 1: 0.2322427823226963, 2:

当我得到答案时,我会踢自己的脚,但是我特别关注如何塑造我的数据框架,以便我可以使用seaborn的分组条形图功能。特别地,我希望除了标签之外的所有列都成为x轴上的功能,标签列用于识别每个功能中的分组。设置
hue=“Label”
仅允许我选择一列进行分析。我也尝试过将Label列设置为索引,但仍然停留在如何在同一个图上绘制所有列的问题上

import pandas as pd
x={'COL1A1': {0: 0.2833579201349264, 1: 0.2322427823226963, 2: 0.2234481446366325, 3: 0.1713271996532782, 4: 0.1706736234267313, 5: 0.2168315586062242, 6: 0.386938532513836, 7: 0.167685047602447, 8: 0.1977671674206828}, 'COL1A2': {0: 0.222790260323129, 1: 0.1166248272594191, 2: 0.1213743347438685, 3: 0.07539620593306488, 4: 0.08646408377942773, 5: 0.108099072823806, 6: 0.2253577413174345, 7: 0.07159756158725838, 8: 0.1270212586927018}, 'COL2A1': {0: 0.1177084047971632, 1: 0.03015204272416201, 2: 0.004641911872949625, 3: 0.01252004151673348, 4: 0.004759507378467226, 5: 0.003771667678394546, 6: 0.002448538354908414, 7: 0.001632213095114248, 8: 0.002689169456628402}, 'COL3A1': {0: 0.07704183889927835, 1: 0.05669627792749389, 2: 0.06795005563919726, 3: 0.06820333109906228, 4: 0.06203084779960908, 5: 0.07143978702722126, 6: 0.1075883977017228, 7: 0.02325396568594267, 8: 0.04019275033210956}, 'COL4A1': {0: 0.0006352541367984844, 1: 0.0003530402330976581, 2: 0.0002599951224169368, 3: 0.001068552848567594, 4: 0.0004283762535061793, 5: 0.0001828315856020066, 6: 0.0007922674417145188, 7: 0.00121122295479909, 8: 0.001242371369354}, 'ELN': {0: 0.009590516917155572, 1: 0.01128331824126868, 2: 0.001767761425242979, 3: 0.001335871032556882, 4: 0.0006832478350178915, 5: 6.156058814047895e-05, 6: 4.641718558203665e-05, 7: 0.0007894520340958474, 8: 0.0}, 'FN1': {0: 0.2916957262974497, 1: 0.2991922242655564, 2: 0.2604020611939179, 3: 0.3750793271445748, 4: 0.3947768543681868, 5: 0.3544762810478779, 6: 0.2691587576010813, 7: 0.1879022759492052, 8: 0.2388673352144315}, 'Label': {0: 'DAT', 1: 'DAT', 2: 'DAT', 3: 'DCT', 4: 'DCT', 5: 'DCT', 6: 'TCP', 7: 'TCP', 8: 'TCP'}}    
df=pd.DataFrame(x)
任何帮助都将不胜感激

数据图像:


你好。请不要将数据/代码/错误消息作为图像发布。将文本直接张贴在此处。另见:我的坏,现在就改变它。我忘了我建议也读一读关于seaborn的情节。是的,这可能只是一天的结束,但我不能用melt来解决这个问题。我会仔细看一看,谢谢你的第二句话。是的,我只是工作过度,筋疲力尽。我明白了……我想。我会把我的代码作为答案张贴出来。再次感谢!你好。请不要将数据/代码/错误消息作为图像发布。将文本直接张贴在此处。另见:我的坏,现在就改变它。我忘了我建议也读一读关于seaborn的情节。是的,这可能只是一天的结束,但我不能用melt来解决这个问题。我会仔细看一看,谢谢你的第二句话。是的,我只是工作过度,筋疲力尽。我明白了……我想。我会把我的代码作为答案张贴出来。再次感谢!
ECMxx=pd.read_excel('ECMx.xlsx', sheet_name='Sheet2')
data = ECMxx.melt('Label', var_name='ECM', value_name='Intensity/Total Intensity')
fig = plt.figure(figsize=(10,10))
sns.set(font_scale = 1.2)
sns.set_style("white")
ax=sns.barplot(y='ECM', x='Intensity/Total Intensity', hue='Label', data=data)