BAB I PENDAHULUAN

1.1 Latar Belakang Masalah

Dalam era digital, transformasi data telah bergeser dari sekadar pengumpulan data (Big Data) menuju sistem cerdas yang terintegrasi. Kita kini menyaksikan konvergensi antara kecerdasan buatan dan data geospasial, sebuah bidang yang berkembang pesat dan dikenal sebagai GeoAI (Geospatial Artificial Intelligence).Setiap hari, sensor real-time, citra satelit beresolusi tinggi, dan perangkat Internet of Things (IoT) menghasilkan aliran data masif yang tidak hanya besar volumenya, tetapi juga secara fundamental terikat pada lokasi. Data spasial ini telah menjadi fondasi dalam berbagai inovasi, mulai dari model kota pintar (smart cities), monitoring kebencanaan, hingga pemantauan perubahan iklim presisi tinggi (Darmawan dkk, 2024).

Namun, volume dan kompleksitas data spasial modern ini menciptakan tantangan interpretasi yang signifikan. Aliran data mentah berbentuk koordinat, poligon, atau piksel raster tidak memiliki nilai intrinsik jika tidak dapat dipahami oleh manusia. Di sinilah visualisasi data spasial, atau geovisualisasi, berperan sebagai alat kognitif esensial untuk menerjemahkan data mentah menjadi wawasan yang dapat ditindaklanjuti. Jauh melampaui kartografi tradisional, geovisualisasi modern berfokus pada analitik visual interaktif, yang memungkinkan para analis dan pemangku kepentingan untuk mengeksplorasi data secara dinamis, mengungkap pola spasial stemporal yang tersembunyi, dan mengkomunikasikan temuan kompleks untuk mendukung pengambilan keputusan berbasis data (Sajati & Panji, 2024).

Sejalan dengan urgensi tersebut, penelitian ini menempatkan visualisasi data spasial sebagai komponen utama dalam proses analitik. Visualisasi tidak dipandang sebagai pelengkap, tetapi sebagai sarana untuk mengonversi struktur data yang kompleks menjadi informasi yang mudah dipahami dan dianalisis secara mendalam. Pendekatan ini memungkinkan peneliti menelusuri hubungan antarwilayah, mengenali pola distribusi, serta menilai karakteristik fenomena secara lebih menyeluruh. Dengan demikian, visualisasi berperan penting dalam menghasilkan analisis spasial yang akurat, informatif, dan memiliki nilai aplikatif bagi berbagai kepentingan penelitian maupun kebijakan.

1.2 Rumusan Masalah

  1. Mahasiswa dapat membuat peta dengan paket pemrograman R
  2. Mahasiswa dapat membuat peta dengan data titik spasial pada R

1.3 Tujuan

  1. Bagaimana cara membuat peta dengan paket pemrograman R?
  2. Bagaimana cara membuat peta dengan data titik spasial pada R?

BAB II TINJAUAN PUSTAKA

2.1 Data Spasial

Data spasial adalah data mengenai objek atau unsur geografis yang dapat diidentifikasikan dan mempunyai acuan lokasi berdasarkan koordinat tertentu. Data spasial meliputi data grafis dan data atribut. Salah satu terwujudnya SIG adalah adanya data spasial. Data ini memiliki sistem koordinat tertentu sebagai dasar referensinya dan mempunyai dua bagian penting yang berbeda dari data yang lain, yaitu informasi lokasi (spasial) dan informasi deskriptif (atribut). Data spasial menunjukkan posisi geografi dimana setiap karakteristik memiliki satulokasi yang harus ditentukan dengan cara yang unik . Data spasial merupakan salah satu aspekdari GIS. Data spasial memuat beberapa parameter termasuk posisi latitude dan longitude.MySQL juga memiliki tipe data Spasial untuk menyimpan parameter-parameter data spasial (Hajar dkk, 2021)

2.2 Tipe Data Spasial

Tipe data spasial terbagi atas data vektor dan data raster. Data titik memberikan informasi tentang lokasi objek/peristiwa yang terjadi pada wilayah studi atau wilayah pengamatan. Data titik dapat menggambarkan pohon, titik pusat gempa,tempat tinggal pasien Corona dan lain sebagainya. Data garis menghubungkan paling sedikit dua data titik yang biasanya digunakan untuk menggambarkan jalan, sungai, jaringan listrik, jaringan komunikasi, aliran pipa air, dll. Data garis menghubungkan paling sedikit dua data titik yang biasanya digunakan untuk menggambarkan jalan, sungai, jaringan listrik, jaringan komunikasi, aliran pipa air, dll. Data Raster biasanya disebut juga dengan data sel grid yang diperoleh dari hasil penginderaan jauh, data ini sangat bergantung pada ukuran pixelnya (Novianti, 2025)

BAB III METODE PENELITIAN

3.1 Sumber Data

Jenis data yang digunakan dalam penelitian ini berupa data kuantitatif. Data kuantitatif adalah jenis data yang dapat diukur atau dihitung secara langsung. Dalam penelitian ini bersumber dari website USGS.

3.2 Variabel Penelitian

Penelitian ini menggunakan lima variabel utama yang menggambarkan karakteristik kejadian gempa bumi di wilayah Jawa Timur. Variabel pertama adalah waktu kejadian (time), yaitu informasi mengenai tanggal dan jam terjadinya gempa, yang dalam dataset tercatat antara 11 Januari 2024 hingga 13 Desember 2024. Variabel kedua adalah lintang (latitude), yang menunjukkan posisi pusat gempa pada arah utara–selatan, sesuai wilayah geografis Jawa Timur dan zona subduksi di selatan. Variabel ketiga adalah bujur (longitude), yaitu posisi pusat gempa pada arah timur. Selanjutnya, variabel kedalaman (depth) digunakan untuk menggambarkan seberapa dalam sumber gempa berada di bawah permukaan bumi. Terakhir, variabel magnitudo (mag) menunjukkan kekuatan gempa yang terjadi. Kelima variabel ini menjadi dasar analisis dengan total 72 observasi kejadian gempa.

3.3 Langkah-langkah Analisis

Algoritma yang digunakan berdasarkan batasan masalah ini adalah sebagai berikut: 1. Mulai 2. Input Data 3. Memanggil Library Pendukung 4. Statistika Deskriptif 5. Mengonversi Data ke Format Spasial 6. Mengambil Batas Wilayah Jawa Timur dari Natural Earth 7. Membuat Peta Sebaran Gempa dengan Tanpa SPHP 8. Membuat Shapefile Jawa Timur dengan SPHP 9. Hasil 10. Interpertasi hasil 11. Selesai

BAB IV HASIL DAN PEMBAHASAN

4.1 Statistik Deskriptif

library(sf)
## Warning: package 'sf' was built under R version 4.2.3
## Linking to GEOS 3.9.3, GDAL 3.5.2, PROJ 8.2.1; sf_use_s2() is TRUE
library(ggplot2)
## Warning: package 'ggplot2' was built under R version 4.2.3
library(dplyr)
## Warning: package 'dplyr' was built under R version 4.2.3
## 
## Attaching package: 'dplyr'
## The following objects are masked from 'package:stats':
## 
##     filter, lag
## The following objects are masked from 'package:base':
## 
##     intersect, setdiff, setequal, union
library(rnaturalearth)
library(rnaturalearthdata)
## Warning: package 'rnaturalearthdata' was built under R version 4.2.3
## 
## Attaching package: 'rnaturalearthdata'
## The following object is masked from 'package:rnaturalearth':
## 
##     countries110
library(viridis)
## Warning: package 'viridis' was built under R version 4.2.3
## Loading required package: viridisLite
library(readr)
## Warning: package 'readr' was built under R version 4.2.3
library(remotes)
## Warning: package 'remotes' was built under R version 4.2.3
data_gempa <- read_csv("E:/SEMESTER 7/PRAKTIKUM PSS/data gempa jatim.csv"); head(data_gempa); summary(data_gempa)
## Rows: 72 Columns: 22
## ── Column specification ────────────────────────────────────────────────────────
## Delimiter: ","
## chr   (8): magType, net, id, place, type, status, locationSource, magSource
## dbl  (12): latitude, longitude, depth, mag, nst, gap, dmin, rms, horizontalE...
## dttm  (2): time, updated
## 
## ℹ Use `spec()` to retrieve the full column specification for this data.
## ℹ Specify the column types or set `show_col_types = FALSE` to quiet this message.
## # A tibble: 6 × 22
##   time                latitude longitude depth   mag magType   nst   gap  dmin
##   <dttm>                 <dbl>     <dbl> <dbl> <dbl> <chr>   <dbl> <dbl> <dbl>
## 1 2024-12-13 17:39:26    -9.39      113.  55.9   4.4 mb         47    65 1.59 
## 2 2024-12-10 20:11:22    -9.78      112.  10     4.4 mb         33   125 2.34 
## 3 2024-12-02 16:06:10    -9.59      110.  10     4.5 mb         44   115 2.53 
## 4 2024-11-29 04:49:41    -8.92      115.  93.9   4.3 mb         20    96 0.621
## 5 2024-11-17 23:26:48    -9.47      114.  48.3   4.5 mb         38   110 1.03 
## 6 2024-11-04 03:26:05    -8.86      110. 101.    4.5 mb         20   132 1.81 
## # ℹ 13 more variables: rms <dbl>, net <chr>, id <chr>, updated <dttm>,
## #   place <chr>, type <chr>, horizontalError <dbl>, depthError <dbl>,
## #   magError <dbl>, magNst <dbl>, status <chr>, locationSource <chr>,
## #   magSource <chr>
##       time                           latitude         longitude    
##  Min.   :2024-01-11 09:56:46.55   Min.   :-10.071   Min.   :110.2  
##  1st Qu.:2024-03-22 09:46:41.42   1st Qu.: -9.215   1st Qu.:111.3  
##  Median :2024-05-12 22:37:47.34   Median : -8.821   Median :112.5  
##  Mean   :2024-06-03 17:07:08.03   Mean   : -8.147   Mean   :112.8  
##  3rd Qu.:2024-08-27 18:49:31.00   3rd Qu.: -6.682   3rd Qu.:114.0  
##  Max.   :2024-12-13 17:39:26.68   Max.   : -5.689   Max.   :116.9  
##      depth              mag          magType               nst        
##  Min.   :  9.018   Min.   :4.100   Length:72          Min.   : 11.00  
##  1st Qu.: 10.000   1st Qu.:4.300   Class :character   1st Qu.: 22.00  
##  Median : 54.254   Median :4.500   Mode  :character   Median : 34.00  
##  Mean   : 78.667   Mean   :4.554                      Mean   : 50.29  
##  3rd Qu.: 93.003   3rd Qu.:4.700                      3rd Qu.: 62.00  
##  Max.   :606.447   Max.   :6.400                      Max.   :250.00  
##       gap             dmin            rms             net           
##  Min.   : 16.0   Min.   :0.374   Min.   :0.2500   Length:72         
##  1st Qu.: 54.0   1st Qu.:1.466   1st Qu.:0.5700   Class :character  
##  Median : 72.5   Median :1.818   Median :0.7400   Mode  :character  
##  Mean   : 79.9   Mean   :1.819   Mean   :0.7556                     
##  3rd Qu.:106.5   3rd Qu.:2.261   3rd Qu.:0.9025                     
##  Max.   :179.0   Max.   :3.200   Max.   :1.3800                     
##       id               updated                          place          
##  Length:72          Min.   :2024-03-16 19:01:00.03   Length:72         
##  Class :character   1st Qu.:2024-05-27 14:19:24.03   Class :character  
##  Mode  :character   Median :2024-08-01 01:03:55.53   Mode  :character  
##                     Mean   :2024-08-25 08:30:09.67                     
##                     3rd Qu.:2024-11-12 21:44:09.53                     
##                     Max.   :2025-09-05 16:37:31.90                     
##      type           horizontalError    depthError        magError      
##  Length:72          Min.   : 3.140   Min.   : 1.639   Min.   :0.03800  
##  Class :character   1st Qu.: 6.378   1st Qu.: 1.944   1st Qu.:0.08175  
##  Mode  :character   Median : 7.255   Median : 5.535   Median :0.11200  
##                     Mean   : 7.298   Mean   : 5.304   Mean   :0.11835  
##                     3rd Qu.: 8.190   3rd Qu.: 7.515   3rd Qu.:0.14125  
##                     Max.   :12.370   Max.   :10.558   Max.   :0.37200  
##      magNst          status          locationSource      magSource        
##  Min.   :  2.00   Length:72          Length:72          Length:72         
##  1st Qu.: 13.75   Class :character   Class :character   Class :character  
##  Median : 21.00   Mode  :character   Mode  :character   Mode  :character  
##  Mean   : 31.35                                                           
##  3rd Qu.: 44.25                                                           
##  Max.   :177.00

Data gempa Jawa Timur tahun 2024 menunjukkan rentang waktu kejadian dari Januari hingga Desember 2024. Lokasi kejadian tersebar pada lintang sekitar –10° hingga –5° dan bujur 110° hingga 117°, menggambarkan wilayah Jatim dan zona subduksi di selatan. Kedalaman gempa sangat bervariasi, mulai dari 9 km (gempa dangkal) hingga lebih dari 600 km (gempa sangat dalam), dengan rata-rata sekitar 78 km, yang mengindikasikan dominasi gempa menengah hingga dalam. Magnitudo berkisar antara 4.1 sampai 6.4 dengan rata-rata 4.5, menunjukkan sebagian besar merupakan gempa berkekuatan menengah. Kualitas pengamatan juga cukup baik, terlihat dari jumlah stasiun perekam (nst) yang rata-rata mencapai 50 stasiun, serta nilai gap dan rms yang berada pada rentang wajar untuk data seismik regional.

4.2 Visualisasi Data Spasial tanpa SHP

# 3 Konversi menjadi data spasial (sf) 
gempa_sf <- sf::st_as_sf(
  data_gempa,
  coords = c("longitude", "latitude"),
  crs = 4326
)

# 4. Ambil batas administrasi Indonesia dan filter Bengkulu 
indo <- ne_states(country = "indonesia", returnclass = "sf")
JawaTimur <- indo %>% filter(name == "Jawa Timur")

# 5 Plot peta sebaran gempa TANPA SHP HANYA PACKAGES DARI sf 
peta_gempa <- ggplot() +
  geom_sf(data = JawaTimur, fill = "gray", color = "black") +
  geom_sf(data = gempa_sf, aes(size = mag, color = depth), alpha = 0.7) +
  scale_color_viridis_c(option = "plasma", name = "Kedalaman (km)") +
  scale_size_continuous(name = "Magnitudo", range = c(2, 6)) +
  labs(title = "Sebaran Gempa di Provinsi Jawa Timur", 
       subtitle = "Sumber: USGS",
       x = "longitude", y = "latitude") +
  theme_minimal() +
  theme(plot.title = element_text(face = "bold", size = 14),
        legend.position = "right")
peta_gempa

Berdasarkan peta sebaran gempa bumi di jawa timur dapat dilihat bahwa gempa paling banyak terjadi di laut, yaitu di sebelah selatan Jawa Timur, sedangkan di daratan hampir tidak ada. Warna titik-titiknya kebanyakan ungu, yang artinya gempa-gempa itu terjadi sangat dalam (sekitar 100-300 km di bawah permukaan), bukan gempa dangkal. Ukuran titiknya juga berbeda-beda, yang menunjukkan kekuatannya bervariasi, kebanyakan antara 4.5 sampai 5.5 Magnitudo. Pola ini sangat wajar untuk wilayah selatan Jawa, karena di situlah terjadi tumbukan lempeng bumi yang menyebabkan gempa.

4.3 Visualisasi Data Spasial menggunakan SHP

jatim_shp<-st_read("E:/SEMESTER 7/PRAKTIKUM PSS/jawatimur.shp") 
## Reading layer `jawatimur' from data source 
##   `E:\SEMESTER 7\PRAKTIKUM PSS\jawatimur.shp' using driver `ESRI Shapefile'
## Simple feature collection with 39 features and 26 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY, XYZ
## Bounding box:  xmin: 110.8953 ymin: -8.780223 xmax: 116.2702 ymax: -5.042965
## z_range:       zmin: 0 zmax: 0
## Geodetic CRS:  WGS 84
head(jatim_shp)
## Simple feature collection with 6 features and 26 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY, XYZ
## Bounding box:  xmin: 111.4498 ymin: -8.463947 xmax: 112.9531 ymax: -5.715754
## z_range:       zmin: 0 zmax: 0
## Geodetic CRS:  WGS 84
##   OBJECTID      NAMOBJ      FCODE  REMARK
## 1     9173 Anggaswangi BA03070040    <NA>
## 2     9164  Ampeldento BA03070040    <NA>
## 3     9276     Bakalan BA03070040    <NA>
## 4     9217 Babadan Lor BA03070040 Sepakat
## 5     9111   Abar-abir BA03070040       -
## 6    18744  Jawa Timur BA03070040    <NA>
##                                       METADATA    SRS_ID KDBBPS KDCBPS   KDCPUM
## 1 TASWIL1000020221227_DATA_BATAS_DESAKELURAHAN SRGI 2013   <NA>   <NA> 35.15.14
## 2 TASWIL1000020221227_DATA_BATAS_DESAKELURAHAN SRGI 2013   <NA>   <NA> 35.07.23
## 3 TASWIL1000020221227_DATA_BATAS_DESAKELURAHAN SRGI 2013   <NA>   <NA> 35.75.03
## 4 TASWIL1000020221227_DATA_BATAS_DESAKELURAHAN SRGI 2013   3519 351910 35.19.10
## 5 TASWIL1000020221227_DATA_BATAS_DESAKELURAHAN SRGI 2013   <NA>   <NA> 35.25.12
## 6 TASWIL1000020221227_DATA_BATAS_DESAKELURAHAN SRGI 2013   <NA>   <NA>     <NA>
##       KDEBPS        KDEPUM KDPBPS KDPKAB KDPPUM LUASWH TIPADM      WADMKC
## 1       <NA> 35.15.14.2003   <NA>  35.15     35      0      1    Sukodono
## 2       <NA> 35.07.23.2005   <NA>  35.07     35      0      1 Karangploso
## 3       <NA> 35.75.03.1005   <NA>  35.75     35      0      2 Bugul Kidul
## 4 3519102008 35.19.10.2008     35  35.19     35      0      1    Balerejo
## 5       <NA> 35.25.12.2011   <NA>  35.25     35      0      1      Bungah
## 6       <NA>          <NA>   <NA>   <NA>   <NA>      0      1        <NA>
##        WADMKD        WADMKK     WADMPR WIADKC WIADKK WIADPR WIADKD
## 1 Anggaswangi      Sidoarjo Jawa Timur   <NA>   <NA>   <NA>   <NA>
## 2  Ampeldento        Malang Jawa Timur   <NA>   <NA>   <NA>   <NA>
## 3     Bakalan Kota Pasuruan Jawa Timur   <NA>   <NA>   <NA>   <NA>
## 4 Babadan Lor        Madiun Jawa Timur   <NA>   <NA>   <NA>   <NA>
## 5  Abar- abir        Gresik Jawa Timur   <NA>   <NA>   <NA>   <NA>
## 6        <NA>          <NA> Jawa Timur   <NA>   <NA>   <NA>   <NA>
##                                                   UUPP     LUAS
## 1 Hasil Sinkronisasi Data Pemerintah Daerah Tahun 2019 1.804394
## 2                                       Ajudikasi 2015 1.495720
## 3                      Hasil Delineasi Batas Desa 2019 1.905789
## 4                      Hasil Delineasi Batas Desa 2017 3.057107
## 5 Hasil Sinkronisasi Data Pemerintah Daerah Tahun 2019 1.071223
## 6 Hasil Sinkronisasi Data Pemerintah Daerah Tahun 2019 0.857572
##                         geometry
## 1 MULTIPOLYGON Z (((112.5835 ...
## 2 MULTIPOLYGON (((112.445 -8....
## 3 MULTIPOLYGON Z (((112.9107 ...
## 4 MULTIPOLYGON Z (((111.5241 ...
## 5 MULTIPOLYGON (((112.3985 -7...
## 6 MULTIPOLYGON (((112.8797 -7...
jatim_shp <- st_read("E:/SEMESTER 7/PRAKTIKUM PSS/jawatimur.shp")
## Reading layer `jawatimur' from data source 
##   `E:\SEMESTER 7\PRAKTIKUM PSS\jawatimur.shp' using driver `ESRI Shapefile'
## Simple feature collection with 39 features and 26 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY, XYZ
## Bounding box:  xmin: 110.8953 ymin: -8.780223 xmax: 116.2702 ymax: -5.042965
## z_range:       zmin: 0 zmax: 0
## Geodetic CRS:  WGS 84
jatim_shp <- st_zm(jatim_shp, drop = TRUE, what = "ZM")
jatim_shp <- st_make_valid(jatim_shp)
jatim_shp <- st_buffer(jatim_shp, 0)
gempa_data <- read.csv("E:/SEMESTER 7/PRAKTIKUM PSS/data gempa jatim.csv")
gempa_sf <- st_as_sf(gempa_data,
                     coords = c("longitude", "latitude"),
                     crs = 4326)
ggplot() +
  geom_sf(data = jatim_shp, aes(fill = WADMKK), color = "black", size = 0.3) +
  geom_sf(data = gempa_sf, aes(size = mag, color = depth), alpha = 0.7) +
  guides(fill = "none") +
  scale_color_viridis(option = "plasma", name = "Kedalaman (km)") +
  scale_size_continuous(name = "Magnitudo", range = c(2, 6)) +
  labs(
    title = "Sebaran Gempa Utama di Provinsi Jawa Timur",
    subtitle = "Sumber: USGS",
    x = "Longitude", y = "Latitude",
    caption = "Visualisasi: ggplot2 + sf"
  ) +
  theme_minimal() +
  theme(
    plot.title = element_text(face = "bold", size = 14),
    legend.position = "right"
  )

Berdasarkan visualisasi data gempa “Sebaran Gempa Utama di Provinsi Jawa Timur”, peta ini mengilustrasikan bahwa aktivitas seismik terkonsentrasi di lepas pantai, baik di Samudra Hindia (selatan) maupun Laut Jawa (utara). Setiap kejadian gempa direpresentasikan oleh titik yang ukurannya menunjukkan Magnitudo (berkisar 4.5 hingga 6.0) dan warnanya menunjukkan Kedalaman (dari ungu/dangkal 100 km hingga kuning/sangat dalam 600 km). Pola utama yang teridentifikasi adalah dominasi gempa dangkal (berwarna ungu) di sepanjang zona subduksi di selatan Jawa, sementara di Laut Jawa teridentifikasi klaster gempa dangkal yang signifikan (sekitar 112°E) serta beberapa gempa yang sangat dalam (berwarna kuning).

BAB V KESIMPULAN

5.1 Kesimpulan

Pembuatan peta di R dapat dilakukan dengan memanfaatkan paket-paket pemetaan seperti ggplot2, sf, dan rnaturalearth. Paket-paket ini memungkinkan pengguna menampilkan data spasial dalam berbagai bentuk, baik batas wilayah administratif, garis, maupun poligon. Dengan fungsi seperti geom_sf(), peta dapat divisualisasikan secara informatif dan estetis, sementara sistem koordinat geografis (crs) memastikan hasil peta sesuai dengan posisi sebenarnya di bumi.

Untuk membuat peta dengan data titik spasial, data terlebih dahulu perlu dikonversi ke format spasial menggunakan fungsi st_as_sf() dari paket sf. Kolom koordinat seperti longitude dan latitude digunakan sebagai acuan posisi titik. Selanjutnya, titik-titik tersebut dapat ditampilkan di atas peta dasar menggunakan geom_sf() pada ggplot2, dengan opsi penyesuaian warna, ukuran, dan transparansi agar informasi seperti magnitudo, kedalaman, atau kategori lainnya dapat divisualisasikan dengan

Berdasarkan peta sebaran gempa di Jawa Timur, sebagian besar gempa terjadi di laut selatan, sedangkan di daratan hampir tidak ada. Warna ungu menunjukkan gempa-gempa tersebut terjadi pada kedalaman 100–300 km di bawah permukaan bumi. Pola ini wajar karena wilayah selatan Jawa merupakan zona tumbukan lempeng yang sering memicu gempa bumi.

DAFTAR PUSTAKA

Darmawan, S., Nurulhakim, N. N., & Hernawati, R. (2024). Kecerdasan Buatan berbasis Geospasial (GeoAI) menggunakan Google Earth Engine untuk Monitoring Fenomena Urban Heat Island di Indonesia. Elkomika, 12(2)

Hajar, A., Nabawi, I., Kartikawati, L., Yudana, F. R., Budi, S., & Prasetiyantara, N. (2021). Pengolahan data spasial-geolocation untuk menghitung jarak 2 titik. Creative Information Technology Journal, 8(1), 32-42.

Novianti, P. (2025).Modul Pratikum Pengantar Statistika Spasial. Bengkulu: Universitas Bengkulu.

Sejati, S. P., & Panji, P. (2024). Geovisualisasi Kondisi Air Tanah pada Akuifer Tidak Tertekan di Kecamatan Ngemplak Kabupaten Sleman. Jurnal Wilayah dan Lingkungan, 12(1), 1–16.