如何在lattice中标记面板

9

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

我有一个这样的数据框:

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)))

我需要为每个主题制作散点图,这不是问题,但是... 我想替换lattice中的条纹并在每个图中添加标签。 我使用以下代码成功实现了这一点,但我仍然不满意...

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

最后的问题是如何在每个面板中打印字母而不是数字。 我想将面板称为a,b,c等。

有什么建议吗? 非常感谢 马特奥

1个回答

9

你几乎做到了。如果你需要字母,那么使用panel.number()索引letters

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

你可以在你的面板函数内定义另一个字符向量,并使用它来进行索引。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接