Dalam membuat peta choropleth, perlu menginstal package sf, tigris, ggplot2, dan dplyr kemudian meload nya untuk digunakan.

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

Membuka file shp

Menggunakan fungsi st_read dari package sf

depok <- "C:\\Data\\Spasial\\idn_adm_bps_20200401_shp\\idn_admbnda_adm3_bps_20200401.shp"
datadepok <- st_read(depok)
## Reading layer `idn_admbnda_adm3_bps_20200401' from data source 
##   `C:\Data\Spasial\idn_adm_bps_20200401_shp\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

Membaca data Jumlah Penduduk

Data Jumlah Pendudk Kota Depok per kecamatan diperoleh dari laman BPS Kota Depok. Dalam disimpan dalam file csv, dengan key yang akan digunakan berasal dari kolom adm3_pcode.

PdkDepok <- read.csv("C:\\Data\\Spasial\\PendudukDepok_.csv",
                  header=TRUE, sep=";")
View(PdkDepok)

Merge Data

Agar dapat menampilkan peta yang memuat data jumlh penduduk maka diperlukan penggabungan antara data shape dengan data jumlah penduduk tersebut dengan fungsi geo join.

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

Memberi Gradasi Warna

mycol = c("#F9957F", "#EEBD89", "#D13ABD","#AEBAF8", "#9600FF")

Menampilkan Peta

Menampilkan Peta dengan menggunakan fungsi ggplot.

pDepok <- ggplot() +  
          geom_sf(data=mergedDepok,aes(fill=penduduk))+  
          scale_fill_gradientn(colours=mycol,name="Jumlah Penduduk")+  
          labs(title = "Sebaran Jumlah Penduduk di Kota Depok", subtitle ="Jumlah Jumlah Penduduk Per Kecamatan")
pDepok