如何在 R 中使用 ggplot2 创建一个分组图形,其中一个分组显示所有数据?
要在 R 中使用 ggplot2 创建一个分组图形,其中一个分组显示所有数据,我们可以按照以下步骤操作 -
- 首先,创建一个数据框。
- 然后,使用 facet_grid 函数创建分组图形。
- 之后,创建一个分组图形,将 margins 参数设置为 TRUE,以便显示包含所有数据在内的图形。
创建数据框
让我们创建一个如下所示的数据框 -
x<-round(rexp(25,1.25),2) y<-round(rexp(25,1.89),2) Grp<-sample(LETTERS[1:3],25,replace=TRUE) df<-data.frame(x,y,Grp) df
执行上述脚本时,将生成以下输出(由于随机化的原因,此输出在你的系统中可能有所不同) -
x y Grp 1 2.32 0.47 C 2 0.96 0.01 C 3 0.34 0.49 A 4 1.11 0.75 C 5 0.57 0.63 C 6 0.47 0.38 B 7 0.69 0.06 A 8 1.12 1.66 C 9 0.62 0.81 C 10 0.05 0.60 C 11 0.50 0.05 A 12 0.06 0.18 A 13 0.08 1.30 C 14 2.22 0.13 C 15 0.03 0.13 C 16 0.06 0.24 C 17 0.57 1.04 A 18 0.50 0.09 C 19 1.10 0.36 B 20 0.10 0.00 B 21 1.28 0.42 A 22 1.56 0.34 A 23 1.38 0.15 A 24 0.54 0.03 B 25 1.81 1.85 A
创建分组图形
使用 facet_grid 函数在 x 和 y 之间创建一个分组散点图 -
x<-round(rexp(25,1.25),2) y<-round(rexp(25,1.89),2) Grp<-sample(LETTERS[1:3],25,replace=TRUE) df<-data.frame(x,y,Grp) library(ggplot2) ggplot(df,aes(x,y))+geom_point()+facet_grid(~Grp)
输出
创建显示一个分组并包含所有数据的分组图形
如下所示,使用 margins 参数创建显示一个分组并包含所有数据的分组图形 -
x<-round(rexp(25,1.25),2) y<-round(rexp(25,1.89),2) Grp<-sample(LETTERS[1:3],25,replace=TRUE) df<-data.frame(x,y,Grp) library(ggplot2) ggplot(df,aes(x,y))+geom_point()+facet_grid(~Grp,margins=TRUE)
输出
广告