I added logY as the last argument to xyplot and in my curve function. I got the following error message:
Error in myCurve(x) : argument "log" is missing, with no default myCurve <-function(x, log) { f <- ... # calculate curve here if (log==T) f <- log10(f) return(f) } logY=T xyplot(Conc ~ Time | Subj, groups=Dose, data = mydata, scales=list(x=list(at=seq(0,96,24)), y=list(log=logY)), panel = function(...) { panel.abline(h=c(0, 50, 100, 150, 200, 250) , v=c(0,24,48,72,96), col.line="gray") panel.xyplot(...) panel.curve(myCurve, from=0, to=96, n=300, ..., log=logY) }, logY ) Deepayan Sarkar wrote: > > On 12/15/06, RMan54 <[EMAIL PROTECTED]> wrote: >> >> Please take no offence since none was intended. What I meant is that it >> should be simple for me to know how to do this but it isn't because of my >> inexperience. I think that the lattice package is great. > > I didn't mean to suggest that I was offended. I only agreed with you > that it would be nice if there were a way of knowing inside the panel > function whether a log scale is being used, and informing you that > there isn't. > >> However, how can I pass on my own varaibles through xyplot? > > Any arguments not recognized by xyplot will be passed to the panel > function. > > -Deepayan > >> >> Thanks, -Rene >> >> >> Deepayan Sarkar wrote: >> > >> > On 12/15/06, RMan54 <[EMAIL PROTECTED]> wrote: >> >> >> >> This should be simple but I am struggling. I like to easily switch in >> >> xyplot >> >> between a linear or logarithmic y-axis by setting a logical flag logY >> to >> >> False or True. This switch changes the scales argument of xyplot. I >> found >> >> out that the original two-dimentional data (Conc vs Time in my case) >> are >> >> converted to log10(Conc) if log=TRUE in scales, but it appears that >> >> functions like panel.curve need to provide the y values in log10 form >> (if >> >> there is an automatic method, I would like to know). I therefore like >> to >> >> pass on the value logY to my custom panel.curve function. How do I do >> >> that? >> >> I think that the value of logY should go into xyplot that should pass >> it >> >> on >> >> to the panel function and then to the panel.curve function. >> > >> > It probably should, but doesn't. >> > >> > -Deepayan > > ______________________________________________ > R-help@stat.math.ethz.ch mailing list > https://stat.ethz.ch/mailman/listinfo/r-help > PLEASE do read the posting guide > http://www.R-project.org/posting-guide.html > and provide commented, minimal, self-contained, reproducible code. > > -- View this message in context: http://www.nabble.com/xyplot%3A-logarithmic-y-axis-tf2829755.html#a7901073 Sent from the R help mailing list archive at Nabble.com. ______________________________________________ R-help@stat.math.ethz.ch mailing list https://stat.ethz.ch/mailman/listinfo/r-help PLEASE do read the posting guide http://www.R-project.org/posting-guide.html and provide commented, minimal, self-contained, reproducible code.