Inverse Distance Weighting (IDW) adalah metode interpolasi spasial yang digunakan untuk memperkirakan nilai suatu variabel pada lokasi yang tidak memiliki data berdasarkan nilai dari titik-titik di sekitarnya. Prinsip utama IDW adalah:
Semakin dekat jarak suatu titik ke lokasi estimasi, maka semakin besar pengaruh nilainya.
Secara matematis, IDW memberikan bobot yang berbanding terbalik dengan jarak.
IDW digunakan untuk:
Mengestimasi nilai variabel di lokasi yang tidak terukur
Membuat peta permukaan (surface map)
Analisis spasial seperti curah hujan, kemiskinan, suhu, kualitas udara
Penelitian ini bertujuan untuk:
Menginterpolasi nilai suatu variabel spasial di wilayah Sulawesi Selatan
Mengetahui pola sebaran spasial antar kabupaten/kota
Menghasilkan peta prediksi berbasis metode IDW
library(sf)
## Linking to GEOS 3.13.1, GDAL 3.11.4, PROJ 9.7.0; sf_use_s2() is TRUE
library(sp)
library(gstat)
library(raster)
library(ggplot2)
shp <- st_read("D:/Youtube/Spasial/SHP/sulsel.shp")
## Reading layer `sulsel' from data source `D:\Youtube\Spasial\SHP\sulsel.shp' using driver `ESRI Shapefile'
## Simple feature collection with 24 features and 13 fields
## Geometry type: MULTIPOLYGON
## Dimension: XY
## Bounding box: xmin: 117.0385 ymin: -7.758941 xmax: 121.8402 ymax: -1.895236
## Geodetic CRS: WGS 84
data <- read.csv("D:/Youtube/Spasial/LISA.csv")
data
## wilayah Kemiskinan
## 1 Bantaeng 7.2
## 2 Barru 7.5
## 3 Bone 9.5
## 4 Bulukumba 11.1
## 5 Enrekang 10.5
## 6 Gowa 7.8
## 7 Jeneponto 12.5
## 8 Kepulauan Selayar 10.8
## 9 Luwu 11.0
## 10 Luwu Timur 11.8
## 11 Luwu Utara 12.2
## 12 Makassar 4.5
## 13 Maros 6.9
## 14 Palopo 9.3
## 15 Pangkep 8.2
## 16 Parepare 6.5
## 17 Pinrang 8.3
## 18 Sidrap 7.9
## 19 Sinjai 9.8
## 20 Soppeng 8.7
## 21 Takalar 9.0
## 22 Tana Toraja 12.7
## 23 Toraja Utara 13.0
## 24 Wajo 10.2
shp$kemiskinan <- data$Kemiskinan
shp$wilayah <- shp$NAME_2
shp <- st_transform(shp, 32750)
shp_sp <- as(shp, "Spatial")
shp_sp <- as(shp, "Spatial")
formula_idw <- kemiskinan ~ 1
grid <- st_make_grid(shp, cellsize = 1000, what = "centers")
grid <- as(grid, "Spatial")
idw_result <- idw(
formula = formula_idw,
locations = shp_sp,
newdata = grid,
idp = 2.0 # power (default 2)
)
## [inverse distance weighted interpolation]
idw
## standardGeneric for "idw" defined from package "gstat"
##
## function (formula, locations, ...)
## standardGeneric("idw")
## <bytecode: 0x000002c0dd812548>
## <environment: 0x000002c0dd86bac0>
## Methods may be defined for arguments: formula, locations
## Use showMethods(idw) for currently available ones.
idw_df <- as.data.frame(idw_result)
ggplot(idw_df, aes(x = coords.x1, y = coords.x2, fill = var1.pred)) +
geom_tile() +
coord_equal() +
scale_fill_viridis_c() +
labs(title = "Interpolasi IDW",
fill = "Nilai")
IDW bekerja berdasarkan asumsi bahwa titik yang lebih dekat memiliki pengaruh yang lebih besar terhadap nilai estimasi dibandingkan titik yang jauh. Pada gambar tersebut, Anda dapat melihat pola “bola-bola” warna (sering disebut bull’s-eye effect), yang merupakan ciri khas IDW di mana nilai prediksi sangat dipengaruhi oleh titik sampel terdekat.
Area Kuning/Terang (Nilai Tinggi \(\approx 12.5\)): Terdapat beberapa titik panas (hotspots) yang tersebar di sisi timur dan timur laut. Jika ini masih berkaitan dengan data kemiskinan, area ini menunjukkan lokasi dengan persentase kemiskinan tertinggi.
Area Ungu/Gelap (Nilai Rendah \(\approx 5.0\)): Terkonsentrasi di bagian tengah agak ke selatan. Ini menunjukkan kantong-kantong wilayah dengan nilai variabel yang rendah.
Gradasi Hijau (Nilai Menengah \(\approx 10.0\)): Merupakan area transisi yang mendominasi sebagian besar peta, menunjukkan nilai yang lebih mendekati rata-rata populasi.