我有一系列的连线图,类似于下面的例子;
require(lattice)
# set up some data
theta <- seq(-3, 3, .4)
data <- expand.grid(theta, theta)
data$z <- dnorm(data[,1]) * dnorm(data[,2])
names(data) <- c('x','y','z')
# plot it
wireframe(z ~ x * y, data,
scales = list( arrows = FALSE),
aspect = c(1, .6),
drape = TRUE)
下面给出了以下情节。
我想删除面板大纲。标准解决方案是使用par.settings = list(axis.line = list(col = 'transparent'))
;
# try to remove outline
wireframe(z ~ x * y, data,
scales = list( arrows = FALSE),
aspect = c(1, .6),
drape = TRUE,
par.settings = list(axis.line = list(col = 'transparent')))
确实删除了大纲,但不止于此......
也会删除轴刻度标记以及色标周围的轮廓。解决方案可用于2d图,例如参见Controlling axis ticks and axis lines separately on R lattice xyplot,但我无法找到类似的3D /线框图解决方案。
我已经尝试过根据上面的答案提供一个轴功能,但看起来只有顶部/底部/左/右调用功能,这对3d绘图来说不是很有用。
设置par.settings = list(axis.line = list(col = 'transparent'))
时,如何阻止格子去除刻度线和刻度轮廓?
如果做错了,在线框图上使用什么函数来刻度线,以及在色标上使用什么函数作为轮廓?
答案 0 :(得分:2)
此代码可以完成这项工作。
wireframe(z ~ x * y, data,
scales = list( arrows = FALSE, col="black"), # col="black" is required
aspect = c(1, .6),
drape = TRUE,
par.settings = list(axis.line = list(col = 'transparent'))
)