我的数据是一个数据帧,如下所示。
"Tx"列中的每个数组都是我实际想要用作箱线图数据的内容,因此它应该在图表上得到 4 个框。
我的要求是画一个箱线图,x 标签是"part7",y 是来自"Tx"的值,并根据"part"给每个框颜色
这应该很容易通过海生箱线图接近,但在这种情况下,我无法得到我想要的结果。
#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"、"hue",它将生成一个箱线图,但与我的请求不匹配
#If I do not use the 'x', 'y', 'hue'
sns.boxplot(data=df['Tx'])
没有参数"x"、"y"、"色调"的图像
我的要求是:
- X 标签应为"TMIG98AA"/"TMIG98AB"/"TMIG99AA"/"TMIG99AB">
- 盒子只能有两种颜色(一种用于"TMIG98",另一种用于"TMIG99"(
谁能帮我??多谢!
使用..
sns.boxplot(x='TMIG98AA', data=df)
或者当您在代码中使用时
sns.boxplot(x='part7', y='Tx', data=df, hue='part')