1

考虑以下晶格示例:

library(lattice)
x <- c(1:10, 1:10)
y <- c(10:1, 10:1)
z <- c(1:10, seq(1,20, by=2))
a = c(rep("one",10),rep("two",10))

DF <- data.frame(x, y, z, a)

xyplot(y ~ x | a, groups = z < 5, data = DF, col = c("black", "red"),
 pch=20, cex=0.3)

我的问题是:如何增加分隔面板的垂直线的刻度?

4

1 回答 1

2

你可以玩做这样的事情。我对面板函数进行了cistomize,根据条件变量在左侧或右侧向每个面板添加一个段。

xyplot(y ~ x | a, groups = z < 5, data = DF, col = c("black", "red"),
       pch=20, cex=0.3,
       panel = function(...,subscripts){
         limits <- current.panel.limits()
         xx <- limits$xlim
         yy <- limits$ylim
         if(unique(print(DF[subscripts,'a']))=="two"){
           lsegments(xx[1], yy[1], xx[1], yy[2],lwd=20)
         }else{
           lsegments(xx[2], yy[1], xx[2], yy[2],lwd=20)
         }

         panel.xyplot(...,subscripts=subscripts)
       })

在此处输入图像描述

于 2013-11-02T17:02:12.153 回答