R 为ggplot2中的多个变量生成无因式分解的箱线图

R 为ggplot2中的多个变量生成无因式分解的箱线图,r,ggplot2,R,Ggplot2,编辑:添加了使用标准boxplot()函数生成的boxplot 给定iris数据集,以下代码: boxplot(iris[,]) 创建包含五个框的箱线图,每个框对应一个变量,而不将它们拆分为类别,例如,物种。虽然这很简单,但在ggplot2中我无法做到同样的事情 那么,我的问题很简单:我如何才能做到这一点?物种是一个有三个层次的因素(setosa,versicolor和virginica)。我认为如果你把它和其他变量一起画出来是没有意义的 如果您希望在一个绘图中绘制所有其他4个变量(Sepa

编辑:添加了使用标准boxplot()函数生成的boxplot

给定iris数据集,以下代码:

boxplot(iris[,])
创建包含五个框的箱线图,每个框对应一个变量,而不将它们拆分为类别,例如,物种。虽然这很简单,但在ggplot2中我无法做到同样的事情


那么,我的问题很简单:我如何才能做到这一点?

物种
是一个有三个层次的因素(
setosa
versicolor
virginica
)。我认为如果你把它和其他变量一起画出来是没有意义的

如果您希望在一个绘图中绘制所有其他4个变量(
Sepal.Length
Sepal.Width
Petal.Length
、和
Petal.Width
),则更有意义,如下所示

library(dplyr)
library(tidyr)
library(ggplot2)
iris %>% dplyr::select(Species, everything()) %>% tidyr::gather("id", "value",2:5) %>% 
  ggplot(., aes(x = id, y = value))+geom_boxplot()

如果要在同一绘图中绘制所有5个变量,则需要将
物种
转换为数字

iris %>% dplyr::mutate(Species = as.numeric(Species)) %>% tidyr::gather("id", "value",1:5) %>% 
  ggplot(., aes(x = id, y = value))+geom_boxplot()

关于如何使用R代码的问题在这里通常是离题的。这可能是关于的主题,如果您稍等,我们可以尝试将其迁移到那里。我深表歉意!迁移将是美妙的!你不必道歉,我只是让你知道以备将来参考。如果你想加快迁移速度,你可以标记你的问题并让版主迁移。谢谢你的回答。我同意。不幸的是,我需要绘制这样一个方框图,因为我被命令这样做。“这不取决于我,”丹克斯说。请检查更新的答案