具有多个类别的箱线图和小提琴图
Boxplot and violin plot with multiple categories
我有一个化学数据库。它包含4个不同类别的不同元素的化学分析。
我做了一个我的 df 的简化版本,实际上,它有更多的元素。
我想绘制比较每个类别的每个元素的箱线图和小提琴图。像这样:
你愿意帮我吗?
Seaborn 期望 long-form data 其中每一行对应一个观察值。
melt
数据由Category
:
melted = df.melt('Category', var_name='Element', value_name='Concentration')
# Category Element Concentration
# 0 A Au 0.1000
# 1 A Au 0.1500
# 2 A Au 0.4000
# 3 B Au 0.1000
# ...
# 10 D Au 1.0000
# 11 A Ag 1.0000
# ...
# 20 D Ag 40.0000
# 21 D Ag 56.0000
将此 melted
数据框与 boxplot
and violinplot
一起使用:
sns.boxplot(data=melted, x='Element', y='Concentration', hue='Category')
sns.violinplot(data=melted, x='Element', y='Concentration', hue='Category')
我有一个化学数据库。它包含4个不同类别的不同元素的化学分析。
我做了一个我的 df 的简化版本,实际上,它有更多的元素。
我想绘制比较每个类别的每个元素的箱线图和小提琴图。像这样:
你愿意帮我吗?
Seaborn 期望 long-form data 其中每一行对应一个观察值。
melt
数据由Category
:melted = df.melt('Category', var_name='Element', value_name='Concentration') # Category Element Concentration # 0 A Au 0.1000 # 1 A Au 0.1500 # 2 A Au 0.4000 # 3 B Au 0.1000 # ... # 10 D Au 1.0000 # 11 A Ag 1.0000 # ... # 20 D Ag 40.0000 # 21 D Ag 56.0000
将此
melted
数据框与boxplot
andviolinplot
一起使用:sns.boxplot(data=melted, x='Element', y='Concentration', hue='Category')
sns.violinplot(data=melted, x='Element', y='Concentration', hue='Category')