Este cuaderno es realizado para presentar un informe de la materia de Geomática Basica donde se ilustran dos técnicas de interpolación espacial: Distancia Inversa Ponderada (IDW) y Kriging Ordinario (OK). IDW es una técnica determinista. OK es una técnica probabilística. Ambas técnicas se utilizan aquí para obtener una superficie continua de carbono orgánico del suelo (SOC) a 15-30 cm a partir de muestras obtenidas de SoilGrids 250 m para el departamento de Cundinamarca.
Limpiamos la memoria y llamamos librerias que posteriormenete fueron instaladas en nuestra consola
rm(list=ls())
library(terra)
## terra 1.8.15
library(sf)
## Linking to GEOS 3.12.2, GDAL 3.9.3, PROJ 9.4.1; sf_use_s2() is TRUE
library(sp)
library(stars)
## Cargando paquete requerido: abind
library(gstat)
library(automap)
library(RColorBrewer)
library(leaflet)
library(leafem)
library(knitr)
##
## Adjuntando el paquete: 'knitr'
## The following object is masked from 'package:terra':
##
## spin
list.files(path ="cundinamarca", pattern = "*.gpkg")
## [1] "cundinamarca Aguas_P1.gpkg"
## [2] "cundinamarca Carreteras_P1.gpkg"
## [3] "cundinamarca Ciudades_P1.gpkg"
## [4] "cundinamarca Depto_Cundinamarca.gpkg"
## [5] "cundinamarca mun_Cun.gpkg"
## [6] "cundinamarca Rios_P1.gpkg"
## [7] "soc_cundinamarca.gpkg"
## [8] "Suelos_Cundinamarca.gpkg"
Este paso es muy importante, pues debemos tener guardados los datos de soc del cuaderno anterior en la misma carpeta donde tenemos los demas datos y donde tenemos guardado el Spatial_interpolation.Rmd
samples <- sf::st_read("cundinamarca/soc_cundinamarca.gpkg")
## Reading layer `soc_cundinamarca' from data source
## `C:\Users\diazo\OneDrive\Documentos\GEOMATICA\PROYECTO_5\cundinamarca\soc_cundinamarca.gpkg'
## using driver `GPKG'
## Simple feature collection with 2000 features and 1 field
## Geometry type: POINT
## Dimension: XY
## Bounding box: xmin: -74.91012 ymin: 3.827538 xmax: -72.91554 ymax: 5.824439
## Geodetic CRS: +proj=longlat +datum=WGS84 +no_defs
Aca abrimos los datos de SOC (contenido organico en el suelo) con nuestra función st_read.
Como nuestra zona de estudio es el departamento de Cundinamarca, ahora vamos a leer también el geopackage de municipios correspondiente:
munic <- sf::st_read("cundinamarca/cundinamarca mun_Cun.gpkg")
## Reading layer `mgn_adm_mpio_grafico' from data source
## `C:\Users\diazo\OneDrive\Documentos\GEOMATICA\PROYECTO_5\cundinamarca\cundinamarca mun_Cun.gpkg'
## using driver `GPKG'
## Simple feature collection with 116 features and 11 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: -74.89063 ymin: 3.730129 xmax: -73.05256 ymax: 5.837258
## Geodetic CRS: MAGNA-SIRGAS
summary(samples)
## soc geom
## Min. : 0.00 POINT :2000
## 1st Qu.:17.39 epsg:NA : 0
## Median :22.46 +proj=long...: 0
## Mean :21.13
## 3rd Qu.:25.79
## Max. :43.88
Aca observamos que los datos obtenidos fueron 2000
hist(samples$soc)
Este histograma nos sirve como una representación grafica de la distribución de los datos. En el eje X tenemos valores de SOC en intervalos y en el eje Y tenemos la frecuencia de de los valores. Vamos a dejar los valores de SOC en dos digitos
samples$soc = round(samples$soc, 2)
Ahora, vamos a visualizar las muestras para conocer su distribución espacial.
pal <- colorNumeric(
c("#EF15CA","#EDE574","#FC913A","#FF4E50"),
domain = samples$soc
)
leaflet() %>%
addPolygons(
data = munic,
color = "black",
opacity = 0.5,
weight = 1,
fillOpacity = 0.2) %>%
addCircleMarkers(
data = samples,
radius= 1.5,
label = ~soc,
color = ~pal(soc),
fillOpacity = 1,
stroke = F
) %>%
addLegend(
data = samples,
pal = pal,
values = ~soc,
position = "bottomleft",
title = "SOC:",
opacity = 0.9) %>%
addProviderTiles("OpenStreetMap")
## Warning: sf layer has inconsistent datum (+proj=longlat +ellps=GRS80 +towgs84=0,0,0,0,0,0,0 +no_defs).
## Need '+proj=longlat +datum=WGS84'