[R] Problem between panel.abline and log scales (lattice)

Deepayan Sarkar deepayan.sarkar at gmail.com
Mon Jan 19 09:40:39 CET 2009


On 1/12/09, Ptit_Bleu <ptit_bleu at yahoo.fr> wrote:
>
>  Hello and Happy New Year to all R-Users !!!
>
>  I would like to plot a lattice graph with a logarthmic y axis and add two
>  reference lines that is :
>
>  ref<-c(0.0070, 0.0096)
>
>  graph1<-xyplot(data$y1 ~ as.numeric(strptime(data$x1, format="%Y-%m-%d
>  %H:%M:%S")) | as.character(data$Code),
>  list(y = list(log = T)),
>  xlab="X'", ylab="Y",
>  panel = function(...) {
>                 panel.xyplot(..., type="p", pch=20)
>                 panel.abline(h=ref, col="red")
>                }
>
>  )
>   print(graph1)
>
>
>  With this script, no reference lines are plotted.
>  But if I use list(y = list(log = F)), that is a linear scale, it works.
>
>  Could you please explain me the problem (and help me to solve it) ?

xyplot(y ~ x, scales=list(log=TRUE))

is basically equivalent to

xyplot(log10(y) ~ log10(x))

(plus some changes to axis annotation). You will probably need to use
panel.curve instead of panel.abline in your panel function.

-Deepayan



More information about the R-help mailing list