Load package yang akan diperlukan nanti

library(sf)
## Linking to GEOS 3.9.1, GDAL 3.2.1, PROJ 7.2.1
library(ggplot2)
library(tigris)
## To enable 
## caching of data, set `options(tigris_use_cache = TRUE)` in your R script or .Rprofile.
library(dplyr)
## 
## 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

Memasukkan Data SHP

Untuk memasukkan Data SHP, bisa dilakukan dengan melakukan akses pada file SHP yang telah anda download sebelumnya. Data yang digunakan adalah data Kabupaten Gorontalo

Adminkab<-"D:/KULIAH/IPB/SEMESTER 1/Sains Data/Praktikum/data/humdata/idn_admbnda_adm3_bps_20200401.shp"

Jika Anda ingin tahu seperti apa file SHP tersebut di R, bisa memakai fungsi glimpse dari Package dplyr

glimpse(Adminkab)
##  chr "D:/KULIAH/IPB/SEMESTER 1/Sains Data/Praktikum/data/humdata/idn_admbnda_adm3_bps_20200401.shp"

Kemudian merubahnya menjadi melalui fungsi ‘st_read’ dari Package ‘sf’

admin<-st_read(Adminkab)
## Reading layer `idn_admbnda_adm3_bps_20200401' from data source 
##   `D:\KULIAH\IPB\SEMESTER 1\Sains Data\Praktikum\data\humdata\idn_admbnda_adm3_bps_20200401.shp' 
##   using driver `ESRI Shapefile'
## Simple feature collection with 7069 features and 16 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: 95.01079 ymin: -11.00762 xmax: 141.0194 ymax: 6.07693
## Geodetic CRS:  WGS 84

Dapat dilihat, sudah berubah

glimpse(admin)
## Rows: 7,069
## Columns: 17
## $ Shape_Leng <dbl> 0.2798656, 0.7514001, 0.6900061, 0.6483629, 0.2437073, 1.35~
## $ Shape_Area <dbl> 0.003107633, 0.016925540, 0.024636382, 0.010761277, 0.00116~
## $ ADM3_EN    <chr> "2 X 11 Enam Lingkung", "2 X 11 Kayu Tanam", "Abab", "Abang~
## $ ADM3_PCODE <chr> "ID1306050", "ID1306052", "ID1612030", "ID5107050", "ID7471~
## $ ADM3_REF   <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,~
## $ ADM3ALT1EN <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,~
## $ ADM3ALT2EN <chr> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA,~
## $ ADM2_EN    <chr> "Padang Pariaman", "Padang Pariaman", "Penukal Abab Lematan~
## $ ADM2_PCODE <chr> "ID1306", "ID1306", "ID1612", "ID5107", "ID7471", "ID9432",~
## $ ADM1_EN    <chr> "Sumatera Barat", "Sumatera Barat", "Sumatera Selatan", "Ba~
## $ ADM1_PCODE <chr> "ID13", "ID13", "ID16", "ID51", "ID74", "ID94", "ID94", "ID~
## $ ADM0_EN    <chr> "Indonesia", "Indonesia", "Indonesia", "Indonesia", "Indone~
## $ ADM0_PCODE <chr> "ID", "ID", "ID", "ID", "ID", "ID", "ID", "ID", "ID", "ID",~
## $ date       <date> 2019-12-20, 2019-12-20, 2019-12-20, 2019-12-20, 2019-12-20~
## $ validOn    <date> 2020-04-01, 2020-04-01, 2020-04-01, 2020-04-01, 2020-04-01~
## $ validTo    <date> NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA, NA~
## $ geometry   <MULTIPOLYGON [°]> MULTIPOLYGON (((100.2811 -0..., MULTIPOLYGON (~

Memasukkan Data via File CSV

Dengan menambahkan satu kolom baru pada file .dbh pada folder yang telah didownload, kemudian disave kembali dengan format .csv

kabgor <- read.csv("D:/KULIAH/IPB/SEMESTER 1/Sains Data/Praktikum/data/kgor.csv",header=TRUE, sep = ";")

Merge Data

Kemudian gabungkan file .shp dan .csv dengan melakukan merge data. Merge Data dilakukan dengan memmbandingkan primary key antara Spatial Data (admmin hasil import file SHP) dan Data Frame (kabgor hasil Import File CSV), karena CSV yang dipakai berasal dari file dbf biasanya tidak ada masalah. Ini menggunakan fungsi geo_join() dari package tigris

Gorontalo <- geo_join(spatial_data = admin,
                         data_frame = kabgor, by_sp="ADM3_PCODE",
                         by_df="ADM3_PCODE", how ="inner")
## Warning: We recommend using the dplyr::*_join() family of functions instead.

Mengatur Warna

Kita juga bisa mengatur warna gradasi yang nanti akan ditampilkan pada peta

mycol <- c("green", "yellow", "red", "red4")

Menampilkan Plot Peta

pDATA<-ggplot()+
  geom_sf(data=Gorontalo,aes(fill=Kepala_Keluarga))+
  scale_fill_gradientn(colours=mycol)+
  labs(title="Jumlah Kepala Keluarga di Kabupaten Gorontalo Berdasarkan Kecamatan")
pDATA