用R中的RGL输入固定颜色输入向量

时间:2014-08-26 17:42:17

标签: r rgl

有没有办法输入固定的颜色矢量到任何3D rgl图?如果是这样,则可以基于相同区域的栅格将地图图块拉伸到3D表面。但我发现surface3d函数的行为与raster::plot相同,因为它坚持将输入颜色矢量映射到z变量。这目前是否超出了rgl的功能?

1 个答案:

答案 0 :(得分:2)

我实际上并不知道你对所有rgl着色函数的着色是否正确,但对于rgl.surface()它是不正确的。这是?rgl.surface页面上示例的损坏。颜色矢量索引由x-y(实际上是x-z)坐标形成,并给出条纹效果,因为它们被模数化以从有限范围内拉出值。

library(rgl)
data(volcano)

y <- 2 * volcano        

x <- 10 * (1:nrow(y))   
z <- 10 * (1:ncol(y))   

ylim <- range(y)
ylen <- ylim[2] - ylim[1] + 1

colorlut <- terrain.colors(ylen) 

col <- colorlut[(x+length(x)*y +1)%%ylen ] 

rgl.open()
rgl.surface(x, z, y, color=col, back="lines")
rgl.snapshot("striped_volcano.png")

enter image description here