How about this?
library(lattice)
xyplot(y ~ x, panel = function(x, y, ...){
panel.xyplot(x, y, ...)
panel.lmline(x, y, type="l")
})
Matthew Walker wrote:> I am trying to use the Lattice package to produce the same result as I
> can with the base graphics.
>
> With base graphics I can type:
>
> x <- 1:100
> y <- x+rnorm(length(x))
> g <- lm( y ~ x )
> model.y <- g$coef[1]+g$coef[2]*x
>
> plot(x,y) # a plot of the data
> lines( x, model.y ) # a plot of the model, superimposed on the first plot
>
>
> With Lattice graphics I've got this far:
>
> library(lattice)
> plot1 <- xyplot(y ~ x)
> plot2 <- xyplot(model.y ~ x, panel = function(x, y) { llines(x=x, y=y)
})
> print(plot1, more=TRUE, position=c(0,0.5,1,1))
> print(plot2, position=c(0,0,1,0.5))
>
> But this just produces two graphs, one above the other. How do I
> overlay them? What should I be doing in order to get the same result as
> with the base graphics?
--
Chuck Cleland, Ph.D.
NDRI, Inc.
71 West 23rd Street, 8th floor
New York, NY 10010
tel: (212) 845-4495 (Tu, Th)
tel: (732) 452-1424 (M, W, F)
fax: (917) 438-0894