我想下面绘制。 我试图寻找几个包和情节的功能,但我无法找到一个解决方案。
我的数据有四列。
ID F R M
1 2 3 4
2 4 6 7
...
我想看之间的关系M
和R
相对于每个F
值(1,2,3,...)。 所以,我想F
沿x轴, R
沿y轴,和M
为z轴作为在下面的曲线图。
谢谢。
我想下面绘制。 我试图寻找几个包和情节的功能,但我无法找到一个解决方案。
我的数据有四列。
ID F R M
1 2 3 4
2 4 6 7
...
我想看之间的关系M
和R
相对于每个F
值(1,2,3,...)。 所以,我想F
沿x轴, R
沿y轴,和M
为z轴作为在下面的曲线图。
谢谢。
你可以做这样的事情与lattice
cloud
情节,使用panel.3dpolygon
从latticeExtra
。
library(latticeExtra)
# generating random data
d <- data.frame(x=rep(1:40, 7), y=rep(1:7, each=40),
z=c(sapply(1:7, function(x) runif(40, 10*x, 10*x+20))))
# define the panel function
f <- function(x, y, z, groups, subscripts, ...) {
colorz <- c('#8dd3c7', '#ffffb3', '#bebada', '#fb8072', '#80b1d3',
'#fdb462', '#b3de69')
sapply(sort(unique(groups), decreasing=TRUE), function(i) {
zz <- z[subscripts][groups==i]
yy <- y[subscripts][groups==i]
xx <- x[subscripts][groups==i]
panel.3dpolygon(c(xx, rev(xx)), c(yy, yy),
c(zz, rep(-0.5, length(zz))),
col=colorz[i], ...)
})
}
# plot
cloud(z~x+y, d, groups=y, panel.3d.cloud=f, scales=list(arrows=FALSE))
我敢肯定,我并不需要循环groups
在面板功能,但我总是忘了正确的咒语subscripts
和groups
按预期工作。
正如其他评论中所提到的,这种类型的图看起来时髦,但可以掩盖的数据。