【问题标题】:Understanding gstat's variogram了解 gstat 的变异函数
【发布时间】:2019-10-03 00:24:30
【问题描述】:

我不熟悉使用 gstat 和变异函数,希望有人可以帮助向我解释一些细节,这些细节似乎不在文档中。

我已使用默认数据和帮助页面之一中的示例来拟合球形变异函数 https://gisgeography.com/semi-variogram-nugget-range-sill/ 和许多其他网站统计以下定义:

  • SILL:模型第一次变平的值。
  • 范围: 模型第一次变平的距离。
  • NUGGET:值 半变异函数(几乎)截取 y 值。

这一切都说得通。在示例数据中,拟合的变异函数给出了这个 data.frame:

v.fit
#>   model      psill    range
#> 1   Nug 0.08234213    0.000
#> 2   Sph 0.38866509 1098.571

我对此的解释是金块为 0.082,门槛为 0.388,范围为 1098.6,但在下图中,当金块和范围排列时,门槛似乎更接近 0.45。谁能解释一下这些数字?

library(gstat)
library(sp)
library(lattice)

data(meuse)
coordinates(meuse) = ~x+y
v = variogram(log(zinc)~x+y, meuse)
v.fit = fit.variogram(v, vgm(1, "Sph", 700, 1))
v.fit
#>   model      psill    range
#> 1   Nug 0.08234213    0.000
#> 2   Sph 0.38866509 1098.571

testplot<-  plot(v, v.fit,
          panel = function(x, ...) {
            panel = vgm.panel.xyplot(x, ...);
            panel.abline(h = v.fit$psill[1:2], v = v.fit$range[2])})
print(testplot)

reprex package (v0.3.0) 于 2019 年 10 月 3 日创建

【问题讨论】:

    标签: r gstat


    【解决方案1】:

    好的,我刚刚意识到这两个 psill 值加起来就是最高值。这对其他人来说可能很明显,但我会在这里回答而不是删除,以防将来其他人像我一样感到困惑。

        plot(thisvgm, fitvgm2, main = paste0(Reduce(paste, deparse(FORMULAS[[MOD]] )), " range = 15"), ylim = c(0,1500),
             panel = function(x, ...) {
               panel = vgm.panel.xyplot(x, ...);
               panel.abline(h = c(fitvgm2$psill[1],sum(fitvgm2$psill)), v = fitvgm2$range[2])})
    

    【讨论】:

    • 这是正确的解释;请注意,“psill”中的“p”代表“部分”。
    猜你喜欢
    • 2018-01-28
    • 2017-09-12
    • 2016-12-08
    • 1970-01-01
    • 2015-05-27
    • 2017-04-12
    • 2015-10-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多