R ggplot2-来自不同长度源的多个箱线图

R ggplot2-来自不同长度源的多个箱线图,r,boxplot,R,Boxplot,我有几个不同长度的向量,我想使用ggplot2生成并排的箱线图。对于基本绘图系统,这是相对简单的。然而,ggplot2只接受单个数据帧作为输入,这很难从不同长度的数据创建 a <- rnorm(10) b <- rnorm(100) c <- rnorm(1000) boxplot(a, b, c) aggplot使用整齐的长数据帧,并将组(如a、b或c)保存为单独的列。在您的示例中,可以创建一个包含1110行(10+100+1000)和两列(值和组)的数据帧,如下所示: #

我有几个不同长度的向量,我想使用ggplot2生成并排的箱线图。对于基本绘图系统,这是相对简单的。然而,ggplot2只接受单个数据帧作为输入,这很难从不同长度的数据创建

a <- rnorm(10)
b <- rnorm(100)
c <- rnorm(1000)
boxplot(a, b, c)

aggplot使用整齐的长数据帧,并将组(如a、b或c)保存为单独的列。在您的示例中,可以创建一个包含1110行(10+100+1000)和两列(值和组)的数据帧,如下所示:

# Make individual data frames
a <- data.frame(group = "a", value = rnorm(10))
b <- data.frame(group = "b", value = rnorm(100))
c <- data.frame(group = "c", value = rnorm(1000))

# Combine into one long data frame
plot.data <- rbind(a, b, c)

#   group      value
# 1     a  0.2322682
# 2     a -0.9681992
# ...
# 101   b  0.3422354
# 102   b  0.3495342
# ...
# 1001  c -0.6839231
# 1002  c -1.4329843

# Plot
library(ggplot2)
ggplot(plot.data, aes(x=group, y=value, fill=group)) + geom_boxplot()
#制作单个数据帧
A.