Python 重新组合seaborn条形图中的条形图

Python 重新组合seaborn条形图中的条形图,python,seaborn,Python,Seaborn,我想用liwt31的答案来生成一个类似的带组的条形图 我的三个小组是: original: [6.32183908045977, 818.5862068965517, 824.9080459770115] change 1: [104.47142857142858, 166.77142857142857, 271.24285714285713] change 2: [342.7647058823529, 225.90588235294118, 568.6705882352941] 其中,每组列

我想用liwt31的答案来生成一个类似的带组的条形图

我的三个小组是:

original: [6.32183908045977, 818.5862068965517, 824.9080459770115]
change 1: [104.47142857142858, 166.77142857142857, 271.24285714285713]
change 2: [342.7647058823529, 225.90588235294118, 568.6705882352941]
其中,每组列表中的每个项目都是一个时间点

我写了这段代码:

import pandas as pd
import seaborn as sns
import datetime
import matplotlib
import matplotlib.pyplot as plt




def add_to_list(file_name):
    temp_good = []
    temp_bad = []
    temp_all = []
    open_file_name = open(file_name, 'r')
    for line in open_file_name:
        line = line.strip().split()
        if len(line) > 0:
            temp_bad.append(int(line[0]))
            temp_good.append(int(line[1]))
            temp_all.append(int(line[0]) + int(line[1]))
    ave_good = sum(temp_good)/len(temp_good)
    ave_bad = sum(temp_bad)/len(temp_bad)
    ave_all = sum(temp_all)/len(temp_all)
    
    return(ave_bad,ave_good,ave_all)

original = list(add_to_list('original.txt'))
change1 = list(add_to_list('change1.txt'))
change2 = list(add_to_list('change2.txt'))


print(original)
print(change1)
print(change2)

x = [
    'original',
    'change1',
    'change2'
]


df = pd.DataFrame(zip(x*3, ["original"]*3+["change1"]*3+["change2"]*3, original+change1+change2), columns=["A", "B", "C"])
print(df)
plt.figure(figsize=(10, 6))
sns.barplot(x="A", hue="B", y="C", data=df)
plt.show()
输出如下所示:

输入输出的数据帧(即上面打印的df)为:

然而,我真正想要的是所有的蓝条都在一个组中(原始),所有的change1条在一个组中,所有的change2条在一个组中

e、 g.如果原始文件位于X轴上,则应有三个带有这些数字的条形图(此列表中的每个数字都是某件事情发生的时间点,均属于原始文件): [6.32183908045977818.58620689665517824.9080459770115]

而现在,这些数字是各组的蓝色条

有人能告诉我如何纠正这个问题吗,所以第一组条形图应该是: 原文:[6.32183908045977,818.58620689665517,824.9080459770115](此列表中的每个点都是一个时间点,均为原始人口)

第二组钢筋应为: 变更1:[104.47142857142858166.77142857142857271.24285714285713](此列表中的每个点都是一个时间点,全部在变更1人口中)

X轴上的第三组钢筋应为: 变更2:[342.7647058823529225.90588235294118568.6705882352941](此列表中的每个点都是一个时间点,全部在变更2中)

          A         B           C
0  original  original    6.321839
1   change1  original  818.586207
2   change2  original  824.908046
3  original   change1  104.471429
4   change1   change1  166.771429
5   change2   change1  271.242857
6  original   change2  342.764706
7   change1   change2  225.905882
8   change2   change2  568.670588