ggplot2 分面 fact_grid() facet_wrap()
> facet_grid() 可以应用多个标准对数据分组。
如qplot(carat,price,data=diamonds,alpha=I(0.2))+facet_grid(color~cut)
这里 color~cut 波浪号~ 前是分行依据
波浪号~ 后是分列依据
相比facet_wrap,facet_grid 用~ 取代了 ncol、nrow
- magins 用于分面的包含每个变量元素所有数据的数据组。 如qplot(carat,price,data=diamonds,alpha=I(0.2)+facet_grid(color~cut,margins = TRUE))
-
space参数 配合scales使用,如果是fixed(默认) ,则所有小图的大小一致,如果为free,free_x,free_y ,小图的大小将按坐标轴的跨度比例进行设置。如
qplot(carat,price,data=diamonds,alpha=I(0.2))+facet_grid(color~cut,space="free_x",scales="free_x") -
labeller 设置小图标签,
-
两个以上的分组标准示例如下: qplot(carat,price,data=diamonds,alpha=I(0.2))+facet_grid(color+clarity~cut)
-
glimpse(mpg)
p<-ggplot(mpg,aes(displ,cty))+geom_point();p
p+facet_grid(rows=vars(drv)) #将愿数据图按drv的值,分行 排列。
p + facet_grid(cols = vars(cyl)) # 将愿数据图按cyl的值分列
p+facet_grid(vars(drv),vars(cyl)) # 将原数据图按drv分行,cyl分列
要改变facet grid 的图顺序,需要用factor()改变变量水平的顺序(the order of variable levels)
mt<-ggplot(mtcars,aes(mpg,wt,colour=factor(cyl)))+geom_point() ; mt
mt+facet_grid(vars(cyl),scales="free") #
ggplot(mpg,aes(drv,model))+geom_point()+facet_grid(manufacturer~.,scales="free",space="free")+theme(strip.text.y =element_text(angle=0) )
mg<-ggplot(mtcars,aes(x=mpg,y=wt))+geom_point();mg
mg+facet_grid(vs+am~gear,margins = TRUE)
mg+facet_grid(vs+am~gear,margins="am")
mg+facet_grid(vs+am~gear,margins = "vs")
> facet_wrap(facets,nrow=NULL,ncol=NULL,scales="fixed",shrink=TRUE,as.table=TRUE,drop=TRUE)
facets: 分面参数,如 ~cut 表示用cut变量分面
nrow: 绘制图形的行数
ncol: 绘制图形的列数,一般与nrow 只设定一个
scales: 坐标刻度的范围,可以设定4种类型。
fixed 表示所有小图均使用统一坐标范围
free 每个小图按按各自数据范围自由调整坐标刻度范围
free_x 自由调整x轴刻度范围
free_y 自由调整y轴刻度范围
shrinks 为TRUE(默认值)时,按统计后数据调整刻度范围,否则按统计前的数据设定坐标
as.table 为TRUE 则按表格方式排列,即分组level最大值排在表格右下角,否则排在左上角
drop TRUE(默认) 空的数据组不绘图
例如
d.sub<-diamonds[sample(nrow(diamonds),500),]
head(d.sub,4)
theme_set(theme_bw())
p<-ggplot(data=d.sub,aes(x=carat,y=price))
p+geom_point()
p+geom_point()+facet_wrap(~cut)
p+geom_point()+facet_wrap(~cut,scales="free")+ggtitle("scales=free")
p+geom_point()+facet_wrap(~cut,scales="free_y")+ggtitle("scales=free_y")
本文来自博客园,作者:BioinformaticsMaster,转载请注明原文链接:https://www.cnblogs.com/koujiaodahan/p/15955393.html
posted on 2022-03-02 15:35 BioinformaticsMaster 阅读(789) 评论(0) 编辑 收藏 举报