如何在格子中标记面板

mat*_*teo 9 r lattice

这是一个简单的问题,肯定你已经遇到过,但是让我头疼不已......

我有这样的数据帧:

set.seed(3)
mydata <- data.frame(var = rnorm(100,20,1),
                     temp = sin(sort(rep(c(1:10),10))),
                     subj = as.factor(rep(c(1:10),5)))
Run Code Online (Sandbox Code Playgroud)

我需要为每个subj做一个散点图,不是问题,但是...我想要的是从格子中替换条带并为每个图形添加标签.我设法使用以下代码执行此操作,但我仍然不满意...

xyplot(var ~ temp | subj, 
       data = mydata,
       strip=FALSE,
       panel = function(x, y,...) {
               panel.xyplot(x, y,...)
               panel.text(1,21,labels=which.packet())
               }) 
Run Code Online (Sandbox Code Playgroud)

最后一点......我在哪里堆叠...是如何在每个面板中打印字母而不是数字.我想把面板称为a,b,c ......等等.

任何建议......非常感谢matteo

Osc*_*ñán 9

你几乎得到了它.如果你需要的字母,则指数letterspanel.number():

xyplot(var ~ temp | subj, 
   data = mydata,
   strip=FALSE,
   panel = function(x, y,...) {
           panel.xyplot(x, y,...)
           panel.text(1,21,labels=letters[panel.number()])
           }) 
Run Code Online (Sandbox Code Playgroud)

您还可以在面板函数中定义另一个字符向量,并使用此索引模式.