Руководствовался мануалом
https://rpubs.com/Dr_Gurpreet/spatial_interpolation_kriging_R

tab2 <- tab[1:3]
library(geoR)
преобразовываем в формат геоданных
tab2 <-as.geodata(tab2, coords.col = c(1, 2), data.col = 3)

summary(tab2)

Оценка пространственной тенденции и нормальности набора данных
plot(tab2)

plot(tab2, trend = "1st")

plot(variog(tab2, option = "cloud", max.dist = 161156.1))
161156.1 -- 1/2 максимальной дистанции

plot(variog(tab2, max.dist = 161156.1))

vario_model <- variog(tab2, trend = "1st", max.dist = 161156.1)
plot(vario_model)

Определение направленных эффектов/Анизотропии.

plot(variog4(tab2, trend = "1st", max.dist = 161156.1), omnidirectional = T)

Подбор ковариационных моделей на вариограмме
exp_fit_fix <- variofit(vario_model, cov.model = "exponential", fix.nugget = T)
exp_fit_nofix <- variofit(vario_model, cov.model = "exponential", fix.nugget = F)

sph_fit_fix <- variofit(vario_model, cov.model = "spherical", fix.nugget = T)
sph_fit_nofix <- variofit(vario_model, cov.model = "spherical", fix.nugget = F)

plot(vario_model,pch=16)
lines(exp_fit_fix,col="green",lwd=4, lty = 1)
lines(exp_fit_nofix,col="red",lwd=4, lty = 2)
lines(sph_fit_fix,col="blue",lwd=4, lty = 3) 
lines(sph_fit_nofix,col="black",lwd=4, lty = 4)

Выбор наиболее подходящей модели.

Полученная модель с наименьшим значением SSQ считается наиболее подходящей. Расчет SSQ для каждой подходящей модели:
(exp_SSQ_fix <- summary(exp_fit_fix)$sum.of.squares)
(exp_SSQ_nofix <- summary(exp_fit_nofix)$sum.of.squares)
(sph_SSQ_fix <- summary(sph_fit_fix)$sum.of.squares)
(sph_SSQ_nofix <- summary(sph_fit_nofix)$sum.of.squares)
which.min(list(exp_SSQ_fix,exp_SSQ_nofix, sph_SSQ_fix, sph_SSQ_nofix))

Создание сетки прогнозов
prediction_grid <- expand.grid(seq(0, 800000, length.out = 100), seq(0, 800000, length.out = 100))
plot(prediction_grid)

оздание сетки прогнозов
prediction_grid <- expand.grid(seq(0, 800000, length.out = 100), seq(0, 800000, length.out = 100))
plot(prediction_grid)

Кригинг
krig_temp <- krige.conv(tab2, loc=prediction_grid, krige=krige.control(obj.model=sph_fit_fix))
 #gsph_fit_fix - смотрим по выводу команды which.min.
image(krig_temp,col=heat.colors(64))