siAll,这是对昨天的 muy 问题的跟进。下面我尝试添加一个链接
最新的代码是:
mypanel <- function(x,y,...) {
panel.xyplot(x, y, ...)
panel.grid(x=-1, y=-1)
panel.lmline(x,y,col="red",lwd=1,lty=1)
panel.text(200,20,bquote(rho == .(correls[x])),cex=.8, font = 2,col="black")
}
correls <- as.vector(cor(x=mtcars[,2:3],y=mtcars[,1]))
correls<- round(coeff,3)
names(correls)<-names(mtcars[,2:3])
data <- mtcars[,2:3]
charts <- lapply(names(data), function(x) { xyplot (mtcars[,1] ~ mtcars[,x],
panel=mypanel,ylab="MPG", xlab=x)})
该代码需要 datset mtcars 和 lattice ,我认为它可能也需要 LtticeExtra 。
如您所见,我计算了相关系数并希望将它们添加到图表中。添加了文本 gest 但有两个问题:
- correls[x] 部分没有按我的意愿进行评估,我得到了一个 NA(虽然它在控制台中自行工作,但我总是检查它以查找错误)。我似乎不知道如何解决这个问题,即使是指针也会有所帮助,我很乐意做腿部工作
- 在某些图表中,坐标不起作用,因为这是在 lapply 中运行的,这意味着有些是不可见的。在这种情况下,不是第一个图表,是第二个图表)。可以自动定位吗?Agin 只是一个指向要查找或使用的内容的指针表示赞赏
再次感谢
马里奥
更新,面板编号建议的解决方案不起作用,每个图表都是由 lapply 单独创建的,所以它总是 1,所以我没有得到我需要的东西。我修改了代码以尝试处理放置和起始坐标。但是,它并不总是显示,并且由于某种原因它还显示了 correl 中的错误元素,以查看需要使用图表1等手动打印图表。
这是最新的代码
mypanel <- function(x,y,...) {
panel.xyplot(x, y, ...)
panel.grid(x=-1, y=-1)
panel.lmline(x,y,col="red",lwd=1,lty=1)
panel.text(xmax[x],ymax,bquote(rho == .(correls[x])),pos=4,cex=1, font = 2,col="black")
}
correls <- as.vector(cor(x=mtcars[,2:10],y=mtcars[,1]))
correls<- round(correls,3)
names(correls)<-names(mtcars[,2:10])
xmax <-sapply(mtcars[,2:10],max)
names(xmax) <- names(mtcars[,2:10])
xmax<-floor(xmax)
ymax <- floor(max(mtcars[,1]))
data <- mtcars[,2:10]
charts <- lapply(names(data), function(x) { xyplot (mtcars[,1] ~ mtcars[,x],
panel=mypanel,ylab="MPG", xlab=x,
xlim=c(0,ceiling(max(mtcars[,x])))
,ylim=c(0,ceiling(max(mtcars[,1]))))})
再次感谢您的任何指点
马里奥