Как использовать seaborn boxplot с dataframe имеет значение массива - PullRequest
0 голосов
/ 15 сентября 2018

Мои данные - это фрейм данных, как показано ниже.

Каждый массив в столбце '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', он сгенерирует коробочный график, но не совпадет с моимrequest

#If I do not use the 'x', 'y', 'hue'
sns.boxplot(data=df['Tx'])

Изображение без параметра 'x', 'y', 'hue'

Мои запросы:

  1. метка x должна быть «TMIG98AA» / «TMIG98AB» / «TMIG99AA» / «TMIG99AB»
  2. поле должно иметь только два цвета (один для «TMIG98» и другой для «TMIG99»)

Может ли кто-нибудь мне помочь ??Большое спасибо!

1 Ответ

0 голосов
/ 15 сентября 2018

Как насчет использования ..

sns.boxplot(x='TMIG98AA', data=df)

ИЛИ, как вы используете в своем коде

sns.boxplot(x='part7', y='Tx', data=df, hue='part')

...