Intento obtener escala libre con aspecto = 1, pero el mismo rango en x/y en cada panel. En el ejemplo siguiente, esto significa que x-scaling en b debe ser (-0.04,0.04).Escala libre, pero el mismo rango por panel en x/y
Editado: se ha añadido la versión de celosía
library(ggplot2)
d = data.frame(x=rnorm(100),group=c("A","B"))
d$y = d$x+rnorm(100,0,0.5)
d[d$group=="B","x"]=d[d$group=="B","x"]/100
d[d$group=="B","y"]=d[d$group=="B","y"]/60
qplot(x,y,data=d,asp=1) + facet_wrap(~group,scale="free")
require(lattice)
xyplot(y~x|group, data=d,aspect=1,scales=list(relation="free"),
prepanel=function(x,y){
lims = c(min(x,y), max(x,y))
list(xlim=lims,ylim=lims)
})
+1 Buena pregunta . Jugueteé, pero no pude hacer que funcionara como me pediste. – Andrie
@Andrie: Como un enrejado de lana en la lana, primero pensé que era solo mi ignorancia partidista. Después de tu comentario, encontré un hilo [https://groups.google.com/forum/?fromgroups#!topic/ggplot2/cDzL_yHew0I[1-25]] que indica que esto no es tan fácil en ggplot2. –
Parece que olvidé el negativo: http://stackoverflow.com/questions/7905828/multi-panel-plots-in-ggplot2-scales-that-are-free-and-equal?rq=1 –