r - 如何将通用网格添加到格子 xy.plot

标签 r lattice

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/

相关文章:

r - gsub 在 R 中应用组合

r - 如何在 PostgreSQL 中显示主机、用户和端口

r - 如何生成一个因素以另一个因素为条件的条形图?

r - R中的for循环不绑定(bind)文件

r - 每第 n 列将数据帧拆分为多个

r - 条件 RasterStack 图的顶部和侧面的 strip

r - 在 R-Studio 中使用 Lattice panel.identify

r - 为点阵条形图添加标签

r - 更改运算符(operator)默认行为

r - 如何将绘图保存为磁盘上的图像?