R ggplot仅针对不同的x值生成一个箱形图

时间:2020-07-02 15:14:02

标签: r ggplot2 boxplot

我想用ggplot生成箱形图。我用以下代码生成了一个数据集:

names <- c(1,1,1,1,2,2,2,2,3,3,3,3)

data <- c(2,6,8,1,3,6,3,4,3,8,6,5)

frame <- data.frame(data, names)

我想为names中的每个值在一张图中绘制一个箱形图。但是使用以下代码,我只会得到一个箱形图:

ggplot(frame, aes(names,data)) + geom_boxplot()

我怎么了?

在这里您可以看到我得到的图: img

2 个答案:

答案 0 :(得分:2)

names转换为因子:

names <- factor(c(1,1,1,1,2,2,2,2,3,3,3,3))

答案 1 :(得分:2)

您只需添加一行代码即可将名称转换为因数,如@Stephane Laurent所述。

frame$names <- as.factor(frame$names)

enter image description here