Skip to content
Prev 109866 / 398500 Next

Different gridlines per panel in xyplot

Am 20 Feb 2007 um 20:52 hat Rene Braeckman geschrieben:

From:           	"Rene Braeckman" <RMan54 at cox.net>
To:             	<r-help at stat.math.ethz.ch>
Date sent:      	Tue, 20 Feb 2007 20:52:29 -0800
Subject:        	[R] Different gridlines per panel in xyplot
Dear Rene,

I am not quite sure whether this is the most elegant/general 
solution, but one option might be to use trunc(), see the full code 
below.

panel.abline(h=trunc(y), v=xScale, col.line="gray")


library(lattice)
Subj <- rep(1:4,each=3)
Time <- rep(1:3,4) + 0.1
Conc <- (1:12) + 0.1
df <- data.frame(Subj,Time,Conc)
xScale <- 1:3
yScale <- list(1:3,4:6,7:9,10:12)
xyplot(Conc ~ Time | Subj,
       data = df,
       layout = c(2,2),
       type="b",
       scales=list(
          x=list(at=xScale),
          y=list(at=yScale,relation="free")
       ),
       panel = function(x,y,...) {
		## use trunc(y)
           panel.abline(h=trunc(y), v=xScale, col.line="gray")
           panel.xyplot(x,y,...)
      }
)


HTH,

Bernd