R-如何从插值轮廓图获取数据

时间:2019-01-28 08:51:12

标签: r interpolation

我使用“ R”已有一段时间了。我的实际问题是在3d图和插值区域。

我有一个包含3d数据的数据框。假设这是一个区域和相应的海拔。我只有几个兴趣点,并使用插值功能。 3d图为我提供了热图和轮廓线。

现在,我对恒定高度的轮廓线感兴趣,我想获取它的X和Y坐标。例如,实际插值数据并不包含所有正好为零的点。

test = data.frame(x = rep(c(1,2,3), 3), y = c(rep(1,3),rep(2,3),rep(3,3)), z = rnorm(9, 0, 1))
mat = as.matrix(interp(test$x, test$y, test$z, nx = 10, ny = 10, duplicate = "strip"))[[3]]

image(mat)
contour(mat, add = TRUE)
contour(mat, add = TRUE, levels = 0, lwd = 3)

我尝试了一些拟合函数,如lm,黄土,lowess,nls等。但是他们都不适合我。是用于2D数据,还是给我与轮廓线完全不同的数据点。

有什么想法吗?

最诚挚的问候,

Lalle

1 个答案:

答案 0 :(得分:0)

好吧,经过几天的搜索,我终于找到了解决方法。

“ grDevices”包中的函数“ contourLines”返回所有内插线的列表。