Visualize Kepadatan Kota Jakarta 2017

So we have data from data.jakarta and we’ll try to visualize Jakarta Kepadatan Penduduk.

options(scipen = 9999)
library(indonesia)
library(plotly)
## Loading required package: ggplot2
## 
## Attaching package: 'plotly'
## The following object is masked from 'package:ggplot2':
## 
##     last_plot
## The following object is masked from 'package:stats':
## 
##     filter
## The following object is masked from 'package:graphics':
## 
##     layout
library(ggplot2)
library(tidyverse)
## -- Attaching packages ----------------------------------------------- tidyverse 1.2.1 --
## v tibble  2.0.0     v purrr   0.2.5
## v tidyr   0.8.2     v dplyr   0.7.8
## v readr   1.3.1     v stringr 1.3.1
## v tibble  2.0.0     v forcats 0.3.0
## -- Conflicts -------------------------------------------------- tidyverse_conflicts() --
## x dplyr::filter() masks plotly::filter(), stats::filter()
## x dplyr::lag()    masks stats::lag()
library(sf)
## Linking to GEOS 3.6.1, GDAL 2.2.3, PROJ 4.9.3
## [1] FALSE
dki <- id_map("jakarta", "kelurahan")
datvis <- st_as_sf(lotlan, coords = c("longitude", "latitude"))
st_crs(datvis) <- st_crs(dki)

datfinal <- st_join(dki, datvis, left=FALSE)
## although coordinates are longitude/latitude, st_intersects assumes that they are planar
ggplot(datfinal) +
  geom_sf(aes(fill=jumlaluas_wilayah), color="gray75")

ggplot(datfinal) +
  geom_sf(aes(fill=jumlah_kepadatanjiwakm2), color="gray100") + 
  guides(fill=guide_legend(title=expression("Jumlah Kepadatan Jiwa (jiwa/km^2)")) +
  theme(panel.background = element_blank(),
        panel.grid.major.y = element_blank())
  )

colnames(datfinal)[15] <- "jumlahkepadatan"
ggplotly(
  ggplot(data = datfinal, aes(text = paste("Kelurahan:", nama_kelurahan.x,"\n","Jumlah kepadatan(jiwa/km^2):", jumlahkepadatan))) +
  geom_sf(aes(fill=jumlahkepadatan), color="gray100", show.legend = T) + 
  #guides(fill=guide_legend(title=NULL)) +
  theme(panel.background = element_blank(),
        #legend.position = "top", 
        axis.line=element_blank(),axis.text.x=element_blank(),
          axis.text.y=element_blank(),axis.ticks=element_blank(),
          axis.title.x=element_blank(),
          axis.title.y=element_blank()) +
    labs(x = "", y = "", title = "Kepadatan Penduduk DKI Jakarta 2017", caption = "source: data.jakarta.go.id" ),
  tooltip = "text"
)
datfinal[datfinal$nama_kelurahan.x == "jelambar baru",]
## Simple feature collection with 0 features and 15 fields
## bbox:           xmin: NA ymin: NA xmax: NA ymax: NA
## epsg (SRID):    4326
## proj4string:    +proj=longlat +datum=WGS84 +no_defs
##  [1] kode_provinsi       nama_provinsi.x     kode_kota          
##  [4] nama_kota           kode_kecamatan      nama_kecamatan.x   
##  [7] kode_kelurahan      nama_kelurahan.x    tahun              
## [10] nama_provinsi.y     nama_kabupaten_kota nama_kelurahan.y   
## [13] nama_kecamatan.y    jumlaluas_wilayah   jumlahkepadatan    
## [16] geometry           
## <0 rows> (or 0-length row.names)
datfinal %>% arrange(desc(jumlahkepadatan))
## Simple feature collection with 249 features and 15 fields
## geometry type:  POLYGON
## dimension:      XY
## bbox:           xmin: 106.6858 ymin: -6.373226 xmax: 106.9734 ymax: -6.088038
## epsg (SRID):    4326
## proj4string:    +proj=longlat +datum=WGS84 +no_defs
## First 10 features:
##    kode_provinsi               nama_provinsi.x kode_kota       nama_kota
## 1             31 DAERAH KHUSUS IBUKOTA JAKARTA      3174   Jakarta Barat
## 2             31 DAERAH KHUSUS IBUKOTA JAKARTA      3171 Jakarta Selatan
## 3             31 DAERAH KHUSUS IBUKOTA JAKARTA      3173   Jakarta Pusat
## 4             31 DAERAH KHUSUS IBUKOTA JAKARTA      3173   Jakarta Pusat
## 5             31 DAERAH KHUSUS IBUKOTA JAKARTA      3173   Jakarta Pusat
## 6             31 DAERAH KHUSUS IBUKOTA JAKARTA      3173   Jakarta Pusat
## 7             31 DAERAH KHUSUS IBUKOTA JAKARTA      3173   Jakarta Pusat
## 8             31 DAERAH KHUSUS IBUKOTA JAKARTA      3173   Jakarta Pusat
## 9             31 DAERAH KHUSUS IBUKOTA JAKARTA      3174   Jakarta Barat
## 10            31 DAERAH KHUSUS IBUKOTA JAKARTA      3174   Jakarta Barat
##    kode_kecamatan  nama_kecamatan.x kode_kelurahan nama_kelurahan.x tahun
## 1         3174040 Grogol Petamburan     3174040007    Jelambar Baru  2017
## 2         3171050    Kebayoran Lama     3171050005   Grogol Selatan  2017
## 3         3173040        Johar Baru     3173040002     Kampung Rawa  2017
## 4         3173040        Johar Baru     3173040004            Galur  2017
## 5         3173040        Johar Baru     3173040003     Tanah Tinggi  2017
## 6         3173060         Kemayoran     3173060005     Utan Panjang  2017
## 7         3173070       Sawah Besar     3173070004     Karang Anyar  2017
## 8         3173070       Sawah Besar     3173070004     Karang Anyar  2017
## 9         3174060        Taman Sari     3174060006        Keagungan  2017
## 10        3174050           Tambora     3174050006    Jembatan Besi  2017
##         nama_provinsi.y nama_kabupaten_kota nama_kelurahan.y
## 1  PROVINSI DKI JAKARTA       JAKARTA BARAT    jelambar baru
## 2  PROVINSI DKI JAKARTA     JAKARTA SELATAN   grogol selatan
## 3  PROVINSI DKI JAKARTA       JAKARTA PUSAT     kampung rawa
## 4  PROVINSI DKI JAKARTA       JAKARTA PUSAT            galur
## 5  PROVINSI DKI JAKARTA       JAKARTA PUSAT     tanah tinggi
## 6  PROVINSI DKI JAKARTA       JAKARTA PUSAT     utan panjang
## 7  PROVINSI DKI JAKARTA       JAKARTA PUSAT     karang anyar
## 8  PROVINSI DKI JAKARTA       JAKARTA PUSAT     karang anyar
## 9  PROVINSI DKI JAKARTA       JAKARTA BARAT        keagungan
## 10 PROVINSI DKI JAKARTA       JAKARTA BARAT    jembatan besi
##     nama_kecamatan.y jumlaluas_wilayah jumlahkepadatan
## 1  GROGOL PETAMBURAN              0.14       304082.60
## 2     KEBAYORAN LAMA              0.29       177591.62
## 3         JOHAR BARU              0.30        90292.26
## 4         JOHAR BARU              0.26        87935.11
## 5         JOHAR BARU              0.62        76118.16
## 6          KEMAYORAN              0.54        68103.66
## 7        SAWAH BESAR              0.51        65788.65
## 8        SAWAH BESAR              0.51        65788.65
## 9         TAMAN SARI              0.32        64568.64
## 10           TAMBORA              0.55        63332.13
##                          geometry
## 1  POLYGON ((106.7814 -6.15281...
## 2  POLYGON ((106.7907 -6.22363...
## 3  POLYGON ((106.8598 -6.18100...
## 4  POLYGON ((106.8519 -6.17792...
## 5  POLYGON ((106.852 -6.175871...
## 6  POLYGON ((106.8554 -6.16643...
## 7  POLYGON ((106.83 -6.149212,...
## 8  POLYGON ((106.83 -6.149212,...
## 9  POLYGON ((106.8125 -6.14822...
## 10 POLYGON ((106.7975 -6.14882...

Also can access the interactive plot here

Avatar
N Iffa DF
Data Enthusiast