felix,
thanks a lot for the hint!

i actually found another way by setting up a panel function by which i can control every single panel with panel.number(). maybe there is more efficient coding - i don't know. i also alternated tickmarks and tick-labeling by panel-rows, which is nicer, but ran into the next trouble of not knowing how to trigger the ylabs which by default will be printed to only one side - i'll show code and would be happy if someone would point out how to put the ylabs correctly so that i'll be able to bring my lattice-odyssey to an end.

here's the code:

library(lattice)

y1 <- rnorm(120,100,10)
y2 <- rnorm(120,10,1)
facs<-expand.grid(Sites=rep(c("Site I","Site II","Site III"),20),Treatment=c("A","B"))

trellis.par.set(clip=list(panel="off",strip="off"),
                layout.widths=list(right.padding=10,
                                  left.padding=8))

PanFun<-function(...){
                            panel.dotplot(...)
                            if(is.element(panel.number(),1:2))
                                        {at<-pretty(c(min(y1),max(y1)))
                               panel.axis("right",at=at,outside=T,
                               labels = F,half=F)}
                            if(panel.number() == 3)
                                        {at<-pretty(c(min(y1),max(y1)))
                               panel.axis("right",at=at,outside=T,
                               labels = T,half=F)
                               ylab="response y1"}    #### how to set ylabs???
                            if(panel.number() == 4)
                                        {at<-pretty(c(min(y2),max(y2)))
                               panel.axis("left",at=at,outside=T,
                               labels = T,half=F)
                                ylab="response y2"}   #### how to set ylabs ???
                            if(is.element(panel.number(),5:6))
                                        {at<-pretty(c(min(y2),max(y2)))
                               panel.axis("left",at=at,outside=T,
                               labels = F,half=F)}
                            }

dotplot(y1+y2 ~ Treatment|Sites,
        outer=TRUE,data=facs,
        scales = list(
            x = list(rot = 0, tck=c(1,0)),
          y = list(draw=F,relation="free",
          limits=list(range(y1),range(y1),range(y1),
                      range(y2),range(y2),range(y2)))),
        ylab=NULL,                              ### this ylab argument would
        xlab=c("Site 1", "Site 2","Site 3"),      ### plot only at left side..
        strip=FALSE, panel=PanFun)


Zitat von Felix Andrews <fe...@nfrac.org>:

Deepayan Sarkar has a function combineLimits() in the development
version of the latticeExtra package (i.e. the version on
r-forge.r-project.org) which will set common scales in each row or
column of your layout. It can also remove the internal axes.

# Felix


On 26 August 2010 04:43, Kay Cichini <kay.cich...@uibk.ac.at> wrote:

.. thanks again, richard.
and you swiftly saw the next problem comming up - when using par.settings =
list(layout.widths = list(axis.panel = c(1, 0))) getting rid of the double
tick labeling would be natural -
but i'll leave it at that for today.

many thanks,
kay


Richard M. Heiberger wrote:

The multiple y axes are protecting you in this situation.


z <- cbind(rnorm(100,c(1,10),1), rnorm(100,c(20,30),1))
dotplot(z[,1]+z[,2] ~ facs$Treatment|facs$Sites,
        outer=TRUE,
        scales = list(
          y = list(
            relation="free")),
        ylab=c("y1", "y2"),
        xlab=c("Site 1", "Site 2"),
        strip=FALSE,
        main="problem")

dotplot(z[,1]+z[,2] ~ facs$Treatment|facs$Sites,
        outer=TRUE,
        scales = list(
          y = list(
            relation="free",
            limits=list(c(-5,13),c(-5,13),c(18,32),c(18,32)))),
        ylab=c("y1", "y2"),
        xlab=c("Site 1", "Site 2"),
        strip=FALSE, main="protected")

For more control (such as suppressing the y-tick labels in the right-hand
column,
I recommend Deepayan Sarkar's book.

Rich

      [[alternative HTML version deleted]]

______________________________________________
R-help@r-project.org 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.




-----
------------------------
Kay Cichini
Postgraduate student
Institute of Botany
Univ. of Innsbruck
------------------------

--
View this message in context: http://r.789695.n4.nabble.com/lattice-help-required-tp2338382p2338707.html
Sent from the R help mailing list archive at Nabble.com.

______________________________________________
R-help@r-project.org 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.




--
Felix Andrews / ???
http://www.neurofractal.org/felix/



______________________________________________
R-help@r-project.org 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.

Reply via email to