2011-08-05 72 views
4

对于每个(x,y,z)我有一组值w。我想将这个4D数据可视化为交互式3D图像图。使用R进行三维可视化

也就是说,每个3D像素x,y,z应该根据w得到一些颜色。

PS:w的范围是0-7,(x,yz)的其余部分只是透明的。

+4

如果你只是把一些从头样本数据......但是[RGL(http://cran.r-project.org/web/packages/rgl/index.html)应该有所帮助。试试'install.packages(“rgl”);要求(RGL); demo(rgl)' – Marek

+0

看看这里的两个答案:http://stackoverflow.com/questions/6774777/how-to-change-points-and-add-a-regression-to-a-cloudplot-using -r/6775352#6775352使用颜色/颜色参数添加第四个维度。 –

+0

这样的事情? http://stackoverflow.com/questions/5972527/r-xy-scatter-plot-in-3d-using-density –

回答

1

这里是一个例子。请注意,您的z数据需要是x行y列的矩阵。

library(rgl) 
set.seed(1) 
x <- seq(1,10) 
y <- seq(1,10) 
w <- runif(100) 
z <- runif(100) 

wcolors <- rainbow(length(w))[rank(w)] 
zmat <- matrix(z, length(x),length(y)) 

persp3d(x=x, y=y, z=zmat, col = wcolors)