要基于两个因子数据创建箱线图,我们可以为其中一个因子创建分面,其中每个分面将包含第二个因子的箱线图。
例如,如果我们有一个名为 df 的数据框,其中包含两个因子列 F1 和 F2 以及一个数字列 Num,则可以使用以下给定命令创建基于这两个因子的箱线图 -
ggplot(df,aes(F1,Num))+geom_boxplot()+facet_wrap(~F2)
以下代码段创建了一个示例数据框 -
Gender<-sample(c("Male","Score"),20,replace=TRUE) Class<-sample(c("First","Second","Third"),20,replace=TRUE) Score<-sample(1:100,20) df<-data.frame(Gender,Class,Score) df输出结果
创建以下数据框 -
Gender Class Score 1 Score First 26 2 Score Second 97 3 Male Third 15 4 Male Second 6 5 Score First 40 6 Score Third 49 7 Male First 60 8 Score Second 41 9 Male Third 82 10 Male First 7 11 Score Third 85 12 Male Second 48 13 Score Third 35 14 Score First 38 15 Score Third 3 16 Male First 51 17 Score Third 37 18 Male First 9 19 Score Third 5 20 Score First 13
要加载 ggplot2 包并为 df 中的数据创建箱线图,请将以下代码添加到上述代码段 -
library(ggplot2) ggplot(df,aes(Class,Score))+geom_boxplot()+facet_wrap(~Gender)输出结果
如果您将上述所有片段作为单个程序执行,它会生成以下输出 -