如何在 R 中使用 ggplot2 创建垂直排列的分面图?


要使用 ggplot2 在 R 中创建垂直排列的分面图,我们可以按照以下步骤操作:

  • 首先,创建一个数据框。
  • 然后,使用 facet_grid 函数创建分面图。
  • 之后,使用 facet_wrap 函数创建分面图。

创建数据框

让我们创建一个如下所示的数据框:

 在线演示

x<-rnorm(20)
y<-rnorm(20)
Grp<-sample(LETTERS[1:3],20,replace=TRUE)
df<-data.frame(x,y,Grp)
df

执行上述脚本后,将生成以下输出(由于随机化,此输出在您的系统上可能会有所不同):

        x           y   Grp
1 0.94991539 -1.0542462  A
2 -0.57885618 -2.0540170 A
3 -1.23460243 0.8274220  A
4 -0.21877000 -1.9415441 C
5 0.04090913 1.6289717   B
6 -0.64176648 -0.3619278 B
7 -0.96150947 -0.6270708 B
8 0.67482657 -0.9131730  A
9 -0.91607782 -1.6654625 C
10 0.28532388 0.4168112  B
11 0.35770097 -1.7113561 C
12 1.11407808 0.3201749  C
13 -0.01130312 -1.0384266 A
14 -2.02079485 0.5223646 B
15 0.61790518 0.7451400  C
16 -0.11281998 0.2334734 B
17 1.59511515 -2.0538179 C
18 0.54389377 -1.4884317 C
19 -1.65685694 2.1253106 B
20 0.10209988 1.6262022  B

使用 facet_grid 创建分面图

使用 facet_grid 函数根据 Grp 列创建 x 和 y 之间的分面散点图:

x<-rnorm(20)
y<-rnorm(20)
Grp<-sample(LETTERS[1:3],20,replace=TRUE)
df<-data.frame(x,y,Grp)
library(ggplot2)
ggplot(df,aes(x,y,col=Grp))+geom_point()+facet_grid(~Grp)

输出

使用 facet_wrap 创建分面图

使用 facet_wrap 函数根据 Grp 列创建 x 和 y 之间的分面散点图:

x<-rnorm(20)
y<-rnorm(20)
Grp<-sample(LETTERS[1:3],20,replace=TRUE)
df<-data.frame(x,y,Grp)
library(ggplot2)
ggplot(df,aes(x,y,col=Grp))+geom_point()+facet_wrap(~Grp,ncol=1)

输出

更新于: 2021年8月14日

3K+ 次浏览

启动你的 职业生涯

通过完成课程获得认证

开始学习
广告