R 等轴散点图
我的数据集如下所示:R 等轴散点图,r,ggplot2,R,Ggplot2,我的数据集如下所示: DataFrame <- data.frame(x=runif(25),y=runif(25), z=sample(letters[1:4],25,rep=TRUE)) 但我不确定coord_equal()是否是我要寻找的函数。ggplot2中的等效函数调用可能是什么?也许facet_wrap()是一个更好的选择,据我所知,xlim和ylim对单个面板的控制在ggplot2中不可用。您的问题在于设置自由的facet比例
DataFrame <- data.frame(x=runif(25),y=runif(25),
z=sample(letters[1:4],25,rep=TRUE))
但我不确定coord_equal()是否是我要寻找的函数。ggplot2中的等效函数调用可能是什么?也许
facet_wrap()
是一个更好的选择,据我所知,xlim
和ylim
对单个面板的控制在ggplot2中不可用。您的问题在于设置自由的facet比例。一旦将镶嵌面比例设置为自由,就不能再添加coord_equal()
如果消除自由比例,则coord_equal()
可以正常工作。如果在每个面板上都需要这种控制,那么从技术上讲,就不再是镶嵌面了,根据定义,这是为公共轴设计的。相反,您可以尝试在gridExtra包中查看类似于grid.arrange的内容。
xyplot(y ~ x | z, data=DataFrame,
scales=list(relation="free"),
prepanel=function(x,y,...) {
rg <- range(na.omit(c(x,y)))
list(xlim=rg,ylim=rg)
},panel=function(x,y,...) {
panel.abline(0,1)
panel.xyplot(x,y,...)
})
ggplot(data=DataFrame) + geom_point(aes(x=x,y=y)) +
facet_grid(~z,scales="free") + coord_equal(ratio=1) +
geom_abline(intercept=0,slope=1)