我有一个栅格堆栈,其中有两层,分别对应2个立面。每个图层都是Lon和Lat坐标值为1(所有缺失值为NA)的栅格,形成多边形。 RasterStack example3D栅格堆栈图
r1<-raster(xmn = 2.5, xmx = 3.3, ymn = 42, ymx = 42.5, nrows = 28, ncols = 33)
r2<-raster(xmn = 2.5, xmx = 3.3, ymn = 42, ymx = 42.5, nrows = 28, ncols = 33)
a<-c(421, 422, 424, 453, 454, 455, 456, 457, 485, 486, 487, 488, 489, 513, 514, 515, 516, 517, 518, 519, 546, 547, 548, 549, 550, 579, 580, 581, 582, 583, 613, 614, 615, 646, 647, 648, 649, 680, 681, 682)
r1[a]<-1
b<-c(514, 515, 516, 547, 548, 549, 550, 613, 614, 615, 647, 648, 649)
r2[b]<-1
st<-stack(r1,r2)
有没有什么办法可以使显示的不同层上不同的海拔高度每一个多边形的3D绘图? (x = LON,Y = LAT,Z = nlayer)
我已经实现了第1层和第2层Scatter3D example的scatter3D图,但我想将它们显示为多边形,以查看整个垂直内的区域是如何重叠的。
请悬停在R标志 - 它要求AA)最小和b)可重复的例子,与一个可以重新创建你目前的状态和问题使用复制,粘贴,运行。也许你想要类似'library(raster); library(plot3D); library(rgl); slogo < - stack(system.file(“external/rlogo.grd”,package =“raster”)); f < - function (x,offset = 0,add = FALSE){x <-as.matrix(x); persp3D(z = x + offset,zlim = c(0,3000),add = add,phi = 50,theta = 30 ); persp3d(z = x + offset,zlim = c(0,3000),col =“lightblue”,add = add,alpha = .75)}; f(slogo [[1]],0 * 1000,F ); F(slogo [[3]],1 * 1000,T); F(slogo [[3]],2 * 1000,T)'? – lukeA
非常感谢!这正是我想要的。 – ADM
@lukeA我仍然有一些问题。为什么3D绘图正在改变多边形的原始形状? (我已经附上上面的可重现示例的代码行)。刚刚用一个简单的“绘图”功能绘制了“r1”栅格和你的图,看起来多边形正在发生一些事情。 – ADM