This问题解释了如何在特定位置添加网格
点阵图(即相当于
两个 abline() 用于正常绘图)。我的问题是当
我尝试添加一个常规网格(相当于调用 grid()
对于正常情节)......情节的内容......消失。下面是一个例子:
B<-cbind(rnorm(100),rnorm(100), floor(runif(100,1,7)), floor(runif(100,1,3)),
floor(runif(100,1,4)))
colnames(B)<-c("yval","xval","gval","p","cr")
B<-as.data.frame(B)
xyplot(B$yval~B$xval|B$p*B$cr,group=B$gval,main="Scatterplots by Cylinders and Gears",
ylab="Miles per Gallon", xlab="Car Weight",type="l",lwd=5,
panel=function(x,y){panel.grid()})
如果删除最后一个选项(即 panel=function(x,y){panel.grid()}),那么我会看到数据线,但不会看到 grid()。有没有办法同时拥有网格和数据线提前致谢,
最佳答案
尝试这个:
xyplot(yval ~ xval | p*cr, data=B, group=gval, type=c("l","g"), lwd=5,
main="Scatterplots by Cylinders and Gears",
ylab="Miles per Gallon", xlab="Car Weight")
我简化了你的语法,因为如果你使用
data=
,你可以使用 data.frame 中的变量名。争论。关键是用type=c("l","g")
,这意味着线 + 网格,相当于一个面板功能,看起来像panel=function(...) {
panel.xyplot(...)
panel.grid()
}
就您而言,这是因为您忘记添加
panel.xyplot()
没有画点或线。如果你想要一个不同的网格,你可以使用上面的代码并自定义对
panel.grid()
的调用.
关于r - 如何将通用网格添加到格子 xy.plot,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9699778/