问题描述
我的数据是如下所示的数据框。
我实际上想将“ Tx”列中的每个数组用作箱线图数据,因此它在图表上应获得4个框。
我的要求是绘制一个箱线图,x标签为'part7',y为'Tx'的值,并根据'part'给出每个框的颜色
这应该可以通过seaborn boxplot轻松实现,但是在这种情况下,我无法获得想要的结果。
#My dataframe
df = pd.DataFrame([['TMIG98','TMIG98AA','stage1','ABCD01',[0,0,10]],
['TMIG98','TMIG98AB','stage1','ABCD01',[2,0,0,10]],
['TMIG99','TMIG99AA','stage1','ABCD02',[0,6,2,0]],
['TMIG99','TMIG99AB','stage1','ABCD02',[1,0,9]]],
columns=['part','part7','stage','tool','Tx'])
#When I used seaborn boxplot, it shows"ValueError: Could not interpret input part7'"
sns.boxplot(data=df['Tx'], x='part7', y='Tx', hue='part')
如果我不使用“ x”,“ y”,“色相”,它将生成一个箱形图,但与我的请求不匹配
#If I do not use the 'x', 'y', 'hue'
sns.boxplot(data=df['Tx'])
我的要求是:
- x标签应为'TMIG98AA'/'TMIG98AB'/'TMIG99AA'/'TMIG99AB'
- 该框应只有两种颜色(一种用于“ TMIG98”,另一种用于“ TMIG99”)
谁能帮我?? 非常感谢!
1楼
那怎么用..
sns.boxplot(x='TMIG98AA', data=df)
或您在代码中使用的
sns.boxplot(x='part7', y='Tx', data=df, hue='part')