我有浮点数的 3D 矩阵,我想使用 R 生成该矩阵的平滑 3D 表面。欢迎提出任何建议。谢谢

现在我正在使用 scatterplot3d ...但是这个函数没有产生平滑的表面

x<-read.table("/Users/me/Desktop/data.txt")
scatterplot3d(x$V1, x$V2, x$V3, highlight.3d = TRUE, angle = 30, col.axis = "blue", col.grid = "lightblue", cex.axis = 1.3, cex.lab = 1.1, pch = 20)

最佳答案

我认为 mba.surf 包中的 MBA 将是平滑的不错选择,正如上面的 larrydag 所暗示的,persp 将很好地对其进行成像。下面的代码来自 help page for the mba.surf 函数(为您的 3 列数据框交换 LIDAR):

data(LIDAR)
mba.int <- mba.surf(LIDAR, 300, 300, extend=TRUE)$xyz.est
# Two ways of imaging....
image(mba.int, xaxs="r", yaxs="r")
persp(mba.int, theta = 135, phi = 30, col = "green3", scale = FALSE,
  ltheta = -120, shade = 0.75, expand = 10, border = NA, box = FALSE)

10-08 08:28