首页 > 解决方案 > 基本变量系列并排箱线图

问题描述

如何使用 ggplot2 和/或 boxplot() 并排绘制两个变量箱形图

生成数据

#generate data
var1<- c(11.5,45,33,67,89,12,5)
var2<- c(23,45,66.7,33,42,88,1)
var3<- c(12,13,14,15.8,16,11,10)
case<- c(1,2,3.4,4,5,6.1,7)
dframe<- as_tibble(cbind(case,var1, var2, var3))

我面临的问题是,当我使用 boxplot() 并标记 x 轴时,所有标签都堆叠在一起

boxplot(var1, var2, var3,
        xlab= c("var1", "var2"))

我使用 ggplot2 时:我收到警告,图表仅显示一个箱形图。

ggplot(dframe, aes(var1, var2, var3))+
  geom_boxplot()

警告信息:Continuous x 审美——你忘了 aes(group=...) 吗?

标签: rggplot2boxplot

解决方案


您需要将数据框转换为长格式,如下所示。

library(tidyverse)

dframe2 <- dframe %>%
  gather(Var, Value, -case)


ggplot(dframe2, aes(x = Var, y = Value))+
  geom_boxplot()

在此处输入图像描述


推荐阅读