使用三角形中的三维轮廓图绘制曲面

时间:2011-10-03 09:38:16

标签: r 3d plot visualization data-visualization

example code here for rgl几乎完全符合我的要求。然而,我的(x,y)不在矩形中,而是在矩形的一半的三角形中(x = 0..1,y = 0..1,如果x + y> 1,则y缺失z。)

我的输入数据集采用以下格式:
x1 x2 x3 x4 x5 x6 z

我希望可视化(x4,x5,z)和(x2,x3,x6)等。任何帮助都很感激如何在R中做到这一点,我是初学者。

可以将最终的地图导出为PDF,EPS或SVG吗?

更新:好的,我看到我可以导出到EPS。

更新2 :感谢Carl I 几乎得到了我想要的东西。 3D surface over a triangle

唯一的问题是表面的一个边缘是锯齿状的。在齿之间,其中x + y <= 4,应该保持表面,使得锯齿形边缘变得与其他边缘一样。我怎么能这样做?

R代码位于input data is here

之下
library(rgl)
mat = matrix(scan("bpexamp.out"),ncol=9,byrow=T)
N <- 4
x <- c(0:N)
y <- c(0:N)
z <- mat[,9]
zlim <- range(y)
zlen <- zlim[2] - zlim[1] + 1
colorlut <- terrain.colors(zlen,alpha=0) # height color lookup table
col <- colorlut[ z-zlim[1]+1 ] # assign colors to heights for each point
open3d()
aspect3d(1,1,0.1)
surface3d(x, y, z, col)
axes3d()

1 个答案:

答案 0 :(得分:1)

这是评论 - 但我不知道如何将图像放入评论中,因此格式化为答案。我跑了一些东西,得到了这个图表: 我跑了一些东西并得到了这个图表:enter image description here

那么,这里缺少什么或不准确?我们可以为你“修理”它......