在r中添加点到3d图

时间:2014-12-28 23:06:12

标签: r graphics 3d

我初学者在R中用3D绘图,我需要帮助。我试图绘制一些简单的抛物面

library(rgl)
x <- seq(-1,1, 0.2)
y <- x
f <- function(x,y){
   -(x^2+y^2)
}
z <- outer(x,y, "f")
persp3d(x, y, z, col="gray")

所以,我的问题是:

  1. 我可以只绘制网格,还是让颜色透明,还能看到“在后面”的部分?

  2. 如何在地图上添加点(在表面上,例如以其他颜色点(1,1,2)绘制)?

1 个答案:

答案 0 :(得分:5)

有关表面属性的信息,请参阅?material3d。大多数此类属性(例如alphafront="line"back="line")都可以直接传递给persp3d()。使用points3d()(或spheres3d())添加积分。

persp3d(x, y, z, col="gray", alpha=0.5)
points3d(1,1,2,col="red")
persp3d(x, y, z, col="gray", front="line", back="line")
spheres3d(1,1,2,col="red",radius=5)  ## appropriate radius: I used x <- y <- 1:20