如何在同一个情节中制作两个箱线图?

How to make two boxplots in the same plot?

对于大学,我的任务是在同一个图中并排创建两个晶须箱线图。 (然后对他们进行批评和观察)

本练习所基于的sway数据框,可以通过以下R命令获取:

sway <-
  structure(list(Age = structure(c(1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 1L, 2L, 2L, 2L, 2L, 2L, 2L, 2L, 2L),
                                 .Label = c("Elderly", "Young"), class = "factor"),
                 FBSway = c(19L, 30L, 20L, 19L, 29L, 25L, 21L, 24L, 50L, 25L, 21L, 17L, 15L, 14L, 14L, 22L, 17L), 
                 SideSway = c(14L, 41L, 18L, 11L, 16L, 24L, 18L, 21L, 37L, 17L, 10L, 16L, 22L, 12L, 14L, 12L, 18L)),
            .Names = c("Age", "FBSway", "SideSway"),
            class = "data.frame", row.names = c(NA, -17L))

我们的想法是,我们在同一图中为 YoungElderly 年龄组创建一个 sway$FBsway 的箱线图。

我知道 par(mfrows=c(1,2)) 函数,但这会创建两个并排的松散图。

如何将 sway 数据框转换为 boxplot() 可用于在单个图中创建所需箱线图的格式?

这是否符合您的要求?

plot(as.numeric(sway$FBSway) ~as.factor(sway$Age))

这个怎么样?

library(ggplot2)
library(reshape2)
sway <- melt(sway)

ggplot(sway, aes(variable, value)) + geom_boxplot() + facet_wrap(~Age)

ggplot(sway, aes(Age, value)) + geom_boxplot() + facet_wrap(~variable)