R 中的断轴

Break axis in R

最近我在用 xyplot 表示一些数据时遇到了一些问题。一切看起来都很好,但我的老板让我打破轴(我不是很喜欢打破轴)。到目前为止,我已经能够使用函数 shingle 完成此操作,但面板的顺序非常混乱,无法读取信息。此外,我希望条带在图形上只显示变量 cs 而不是 st(我的示例 data.frame 中指定的信息)。然后,真正的挑战是将所有这些要求固定到 lattice 中,这是组内图形的内部标准。

这是我的示例 data.frame (http://1drv.ms/1JOKSPU) 代码示例:

AA<-read.csv("~/example.csv",header = T,sep = ";",dec = ",")
    AA$st <-
      shingle(Indl.Data$t,
              intervals = rbind(c(0, 14),
                                c(23, 26)))
    AA<-AA[with(AA, order(t)), ]



    my.panel.1 <- function(x, y, subscripts, col, pch,cex,sd,...) {
      low95 <- y-sd[subscripts]
      up95 <- y+sd[subscripts]
      panel.xyplot(x, y, col=col, pch=pch,cex=cex, ...)
      panel.arrows(x, low95, x, up95, angle=90, code=3,lwd=3, 
                   length=0.05, alpha=0.5,col=col)
    }
    xyplot( logOD~t|cs+st,
            data=AA,
            strip = T,
           sd=0,
            groups=cs,
            xlab = list("Time ", cex=1.5), 
            ylab = list("growth", cex=1.5),
            type="p",
            col=c("red","black"),
            scales = list(x = "free"), between = list(x = 0.5),
            panel.groups="my.panel.1", 
            panel="panel.superpose",
            par.settings = list(layout.widths = list(panel = c(6, 2))))

这就是我得到的结果:

提前,如果我的问题的表述有任何错误,我很抱歉,我没有编程背景,这是我的第三个问题。

干杯;

您想通过 st,然后 cs。所以试试 xyplot( logOD~t|st+cs,.

如果需要,可以使用 layout=c(4,3)as.table=TRUE 如果你想让它从左上角开始。