R 使用镶嵌面网格设置单个镶嵌面轴?
我试图制作一个刻面图,其中每个单独的刻面在x轴和y轴上都有不同的比例,我想让每个刻面轴都适合这个比例。但是,R 使用镶嵌面网格设置单个镶嵌面轴?,r,ggplot2,R,Ggplot2,我试图制作一个刻面图,其中每个单独的刻面在x轴和y轴上都有不同的比例,我想让每个刻面轴都适合这个比例。但是,scales='free'选项仅单独设置每个轴的比例,而不是每个面的比例。例如,在以下最小示例中: library(ggplot2) sample_dat = data.frame(X=rep(c('A','A','B','B'), each=10), Y = rep(c('A','B','A','B'), each=10), DX = c(rnorm(10,0,5), rno
scales='free'
选项仅单独设置每个轴的比例,而不是每个面的比例。例如,在以下最小示例中:
library(ggplot2)
sample_dat = data.frame(X=rep(c('A','A','B','B'), each=10),
Y = rep(c('A','B','A','B'), each=10),
DX = c(rnorm(10,0,5), rnorm(10,5,5), rnorm(10,-5,5), rnorm(10,20,5)),
DY = c(rnorm(10,0,5), rnorm(10,-15,5), rnorm(10,25,5), rnorm(10,5,5)))
ggplot(sample_dat, aes(x=DX, y=DY)) + geom_point() + facet_grid(X~Y, scales='free')
下图显示x轴在A列和B列之间变化,但在两行之间是固定的,反之亦然
是否有任何方法可以为四个面中的每一个面绘制单独的x轴和y轴,这样就不会有没有数据的大空间?
facet\u wrap
而不是facet\u grid
应该适合您。类似于ggplot(sample_dat,aes(x=DX,y=DY))+geom_point()+facet_wrap(~x*y,scales=“free”)
?谢谢!这确实解决了刻度的问题,但是有没有办法让刻面标签像使用facet\u grid
一样工作?使用此代码,每个面都会在顶部标记两个类别,而不是在顶部和侧面标记它们以填充网格。facet\u wrap
而不是facet\u grid
应该适合您。类似于ggplot(sample_dat,aes(x=DX,y=DY))+geom_point()+facet_wrap(~x*y,scales=“free”)
?谢谢!这确实解决了刻度的问题,但是有没有办法让刻面标签像使用facet\u grid
一样工作?使用此代码,每个方面都在顶部标记为两个类别,而不是在顶部和侧面标记它们以填充网格。