使用ggplot并排绘制两列的箱线图
box plots for two columns side by side using ggplot
我有以下格式的数据集
value1 value2 group
10 20 A
20 30 A
67 45 B
98 76 C
102 11 A
11 22 B
10 10 B
19 20 C
我正在尝试为三组(A、B 和 C)制作箱线图,第一列和最后一列的箱线图应该并排放置。我可以像下面那样做两个单独的图,但无法弄清楚如何将它们并排组合。
p1 <- ggplot(x, aes(x=group, y=value1)) + geom_boxplot()
p2 <- ggplot(x, aes(x=group, y=value)) + geom_boxplot()
如有任何帮助,我将不胜感激。我是 R 和 ggplot 的新手。
这是一个使用来自 tidyr
的 pivot_longer 的选项
x_new <- tidyr::pivot_longer(x, c(value1, value2))
ggplot(x_new, aes(x = group, y = value, col = name, fill = name)) + geom_boxplot(alpha = .5)
gridExtra 包也可以做到这一点。将您的绘图分配给变量,然后只需使用 grid.arrange(plot1,plot2)。使用 ?grid.arrange 查找文档以获取更多选项。
我有以下格式的数据集
value1 value2 group
10 20 A
20 30 A
67 45 B
98 76 C
102 11 A
11 22 B
10 10 B
19 20 C
我正在尝试为三组(A、B 和 C)制作箱线图,第一列和最后一列的箱线图应该并排放置。我可以像下面那样做两个单独的图,但无法弄清楚如何将它们并排组合。
p1 <- ggplot(x, aes(x=group, y=value1)) + geom_boxplot()
p2 <- ggplot(x, aes(x=group, y=value)) + geom_boxplot()
如有任何帮助,我将不胜感激。我是 R 和 ggplot 的新手。
这是一个使用来自 tidyr
的 pivot_longer 的选项x_new <- tidyr::pivot_longer(x, c(value1, value2))
ggplot(x_new, aes(x = group, y = value, col = name, fill = name)) + geom_boxplot(alpha = .5)
gridExtra 包也可以做到这一点。将您的绘图分配给变量,然后只需使用 grid.arrange(plot1,plot2)。使用 ?grid.arrange 查找文档以获取更多选项。