Tugas 3a.
Menjalankan beberapa fungsi SQLite di R seperti inner_join, left_join, right_join, full_join, semi_join, dan anti_join.

# Mengaktifkan library yang dibutuhkan
library(tidyverse)
## -- Attaching packages --------------------------------------- tidyverse 1.3.1 --
## v ggplot2 3.3.5     v purrr   0.3.4
## v tibble  3.1.4     v dplyr   1.0.7
## v tidyr   1.1.3     v stringr 1.4.0
## v readr   2.0.1     v forcats 0.5.1
## -- Conflicts ------------------------------------------ tidyverse_conflicts() --
## x dplyr::filter() masks stats::filter()
## x dplyr::lag()    masks stats::lag()
library(RSQLite)
library(DBI)
# Koneksi terhadap database
path1 = "E:\\Irvan\\chinook.db"
chinook<-DBI::dbConnect(RSQLite::SQLite(),path1)
class(chinook)
## [1] "SQLiteConnection"
## attr(,"package")
## [1] "RSQLite"
# Melihat tabel
RSQLite::dbListTables(chinook)
##  [1] "albums"          "artists"         "customers"       "employees"      
##  [5] "genres"          "invoice_items"   "invoices"        "media_types"    
##  [9] "playlist_track"  "playlists"       "sqlite_sequence" "sqlite_stat1"   
## [13] "tracks"
# Mengakses Tabel albums
albums<-dplyr::tbl(chinook,"albums")
class(albums)
## [1] "tbl_SQLiteConnection" "tbl_dbi"              "tbl_sql"             
## [4] "tbl_lazy"             "tbl"
albums
## # Source:   table<albums> [?? x 3]
## # Database: sqlite 3.36.0 [E:\Irvan\chinook.db]
##    AlbumId Title                                 ArtistId
##      <int> <chr>                                    <int>
##  1       1 For Those About To Rock We Salute You        1
##  2       2 Balls to the Wall                            2
##  3       3 Restless and Wild                            2
##  4       4 Let There Be Rock                            1
##  5       5 Big Ones                                     3
##  6       6 Jagged Little Pill                           4
##  7       7 Facelift                                     5
##  8       8 Warner 25 Anos                               6
##  9       9 Plays Metallica By Four Cellos               7
## 10      10 Audioslave                                   8
## # ... with more rows
# Mengakses Tabel albums
artists<-dplyr::tbl(chinook,"artists")
class(artists)
## [1] "tbl_SQLiteConnection" "tbl_dbi"              "tbl_sql"             
## [4] "tbl_lazy"             "tbl"
artists
## # Source:   table<artists> [?? x 2]
## # Database: sqlite 3.36.0 [E:\Irvan\chinook.db]
##    ArtistId Name                
##       <int> <chr>               
##  1        1 AC/DC               
##  2        2 Accept              
##  3        3 Aerosmith           
##  4        4 Alanis Morissette   
##  5        5 Alice In Chains     
##  6        6 Antônio Carlos Jobim
##  7        7 Apocalyptica        
##  8        8 Audioslave          
##  9        9 BackBeat            
## 10       10 Billy Cobham        
## # ... with more rows
# Penggunaan inner_join()
inner_join(artists,albums)
## Joining, by = "ArtistId"
## # Source:   lazy query [?? x 4]
## # Database: sqlite 3.36.0 [E:\Irvan\chinook.db]
##    ArtistId Name                 AlbumId Title                                
##       <int> <chr>                  <int> <chr>                                
##  1        1 AC/DC                      1 For Those About To Rock We Salute You
##  2        2 Accept                     2 Balls to the Wall                    
##  3        2 Accept                     3 Restless and Wild                    
##  4        1 AC/DC                      4 Let There Be Rock                    
##  5        3 Aerosmith                  5 Big Ones                             
##  6        4 Alanis Morissette          6 Jagged Little Pill                   
##  7        5 Alice In Chains            7 Facelift                             
##  8        6 Antônio Carlos Jobim       8 Warner 25 Anos                       
##  9        7 Apocalyptica               9 Plays Metallica By Four Cellos       
## 10        8 Audioslave                10 Audioslave                           
## # ... with more rows
# Penggunaan left_join()
left_join(artists,albums)
## Joining, by = "ArtistId"
## # Source:   lazy query [?? x 4]
## # Database: sqlite 3.36.0 [E:\Irvan\chinook.db]
##    ArtistId Name                 AlbumId Title                                
##       <int> <chr>                  <int> <chr>                                
##  1        1 AC/DC                      1 For Those About To Rock We Salute You
##  2        1 AC/DC                      4 Let There Be Rock                    
##  3        2 Accept                     2 Balls to the Wall                    
##  4        2 Accept                     3 Restless and Wild                    
##  5        3 Aerosmith                  5 Big Ones                             
##  6        4 Alanis Morissette          6 Jagged Little Pill                   
##  7        5 Alice In Chains            7 Facelift                             
##  8        6 Antônio Carlos Jobim       8 Warner 25 Anos                       
##  9        6 Antônio Carlos Jobim      34 Chill: Brazil (Disc 2)               
## 10        7 Apocalyptica               9 Plays Metallica By Four Cellos       
## # ... with more rows
# Penggunaan right_join()
right_join(artists,albums)
## Joining, by = "ArtistId"
## # Source:   lazy query [?? x 4]
## # Database: sqlite 3.36.0 [E:\Irvan\chinook.db]
##    ArtistId Name                 AlbumId Title                                
##       <int> <chr>                  <int> <chr>                                
##  1        1 AC/DC                      1 For Those About To Rock We Salute You
##  2        2 Accept                     2 Balls to the Wall                    
##  3        2 Accept                     3 Restless and Wild                    
##  4        1 AC/DC                      4 Let There Be Rock                    
##  5        3 Aerosmith                  5 Big Ones                             
##  6        4 Alanis Morissette          6 Jagged Little Pill                   
##  7        5 Alice In Chains            7 Facelift                             
##  8        6 Antônio Carlos Jobim       8 Warner 25 Anos                       
##  9        7 Apocalyptica               9 Plays Metallica By Four Cellos       
## 10        8 Audioslave                10 Audioslave                           
## # ... with more rows
# Penggunaan full_join()
full_join(artists,albums)
## Joining, by = "ArtistId"
## # Source:   lazy query [?? x 4]
## # Database: sqlite 3.36.0 [E:\Irvan\chinook.db]
##    ArtistId Name                 AlbumId Title                                
##       <int> <chr>                  <int> <chr>                                
##  1        1 AC/DC                      1 For Those About To Rock We Salute You
##  2        1 AC/DC                      4 Let There Be Rock                    
##  3        2 Accept                     2 Balls to the Wall                    
##  4        2 Accept                     3 Restless and Wild                    
##  5        3 Aerosmith                  5 Big Ones                             
##  6        4 Alanis Morissette          6 Jagged Little Pill                   
##  7        5 Alice In Chains            7 Facelift                             
##  8        6 Antônio Carlos Jobim       8 Warner 25 Anos                       
##  9        6 Antônio Carlos Jobim      34 Chill: Brazil (Disc 2)               
## 10        7 Apocalyptica               9 Plays Metallica By Four Cellos       
## # ... with more rows
# Penggunaan semi_join
semi_join(artists,albums)
## Joining, by = "ArtistId"
## # Source:   lazy query [?? x 2]
## # Database: sqlite 3.36.0 [E:\Irvan\chinook.db]
##    ArtistId Name                
##       <int> <chr>               
##  1        1 AC/DC               
##  2        2 Accept              
##  3        3 Aerosmith           
##  4        4 Alanis Morissette   
##  5        5 Alice In Chains     
##  6        6 Antônio Carlos Jobim
##  7        7 Apocalyptica        
##  8        8 Audioslave          
##  9        9 BackBeat            
## 10       10 Billy Cobham        
## # ... with more rows
# Penggunaan anti_join
anti_join(artists,albums)
## Joining, by = "ArtistId"
## # Source:   lazy query [?? x 2]
## # Database: sqlite 3.36.0 [E:\Irvan\chinook.db]
##    ArtistId Name                      
##       <int> <chr>                     
##  1       25 Milton Nascimento & Bebeto
##  2       26 Azymuth                   
##  3       28 João Gilberto             
##  4       29 Bebel Gilberto            
##  5       30 Jorge Vercilo             
##  6       31 Baby Consuelo             
##  7       32 Ney Matogrosso            
##  8       33 Luiz Melodia              
##  9       34 Nando Reis                
## 10       35 Pedro Luís & A Parede     
## # ... with more rows

Tugas 3b. Membuat peta Sulawesi Tenggara

# Mengaktifkan Library yang dibutuhkan
library(shiny)
library(leaflet)
library(RColorBrewer)
library(tidyverse)
library(raster)
## Loading required package: sp
## 
## Attaching package: 'raster'
## The following object is masked from 'package:dplyr':
## 
##     select
## The following object is masked from 'package:tidyr':
## 
##     extract
library(sf)
## Linking to GEOS 3.9.0, GDAL 3.2.1, PROJ 7.2.1
library(sp)
library(scales)
## 
## Attaching package: 'scales'
## The following object is masked from 'package:purrr':
## 
##     discard
## The following object is masked from 'package:readr':
## 
##     col_factor
library(ggsn)
## Loading required package: grid
## 
## Attaching package: 'ggsn'
## The following object is masked from 'package:raster':
## 
##     scalebar
library(plotly)
## 
## Attaching package: 'plotly'
## The following object is masked from 'package:raster':
## 
##     select
## 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(dbscan)
library(rgdal)
## Please note that rgdal will be retired by the end of 2023,
## plan transition to sf/stars/terra functions using GDAL and PROJ
## at your earliest convenience.
## 
## rgdal: version: 1.5-25, (SVN revision 1143)
## Geospatial Data Abstraction Library extensions to R successfully loaded
## Loaded GDAL runtime: GDAL 3.2.1, released 2020/12/29
## Path to GDAL shared files: C:/Users/ASUS/Documents/R/win-library/4.1/rgdal/gdal
## GDAL binary built with GEOS: TRUE 
## Loaded PROJ runtime: Rel. 7.2.1, January 1st, 2021, [PJ_VERSION: 721]
## Path to PROJ shared files: C:/Users/ASUS/Documents/R/win-library/4.1/rgdal/proj
## PROJ CDN enabled: FALSE
## Linking to sp version:1.4-5
## To mute warnings of possible GDAL/OSR exportToProj4() degradation,
## use options("rgdal_show_exportToProj4_warnings"="none") before loading sp or rgdal.
## Overwritten PROJ_LIB was C:/Users/ASUS/Documents/R/win-library/4.1/rgdal/proj
library(spatialreg)
## Loading required package: spData
## To access larger datasets in this package, install the spDataLarge
## package with: `install.packages('spDataLarge',
## repos='https://nowosad.github.io/drat/', type='source')`
## Loading required package: Matrix
## 
## Attaching package: 'Matrix'
## The following objects are masked from 'package:tidyr':
## 
##     expand, pack, unpack
library(spatial)
library(mapview)
library(dplyr)
library(tidyselect)
library(tidyr)
library(rgeos)
## rgeos version: 0.5-7, (SVN revision 676)
##  GEOS runtime version: 3.9.1-CAPI-1.14.2 
##  Please note that rgeos will be retired by the end of 2023,
## plan transition to sf functions using GEOS at your earliest convenience.
##  GEOS using OverlayNG
##  Linking to sp version: 1.4-5 
##  Polygon checking: TRUE
path1="E:\\Irvan\\PETA UNTUK YOUTUBE PAPUA\\gadm36_IDN_2.shp"
indonesia <- st_read(path1)
## Reading layer `gadm36_IDN_2' from data source 
##   `E:\Irvan\PETA UNTUK YOUTUBE PAPUA\gadm36_IDN_2.shp' using driver `ESRI Shapefile'
## Simple feature collection with 502 features and 13 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: 95.0097 ymin: -11.00762 xmax: 141.0194 ymax: 6.076941
## Geodetic CRS:  WGS 84
# Membuat Peta Indonesia
indonesia %>% plot()
## Warning: plotting the first 10 out of 13 attributes; use max.plot = 13 to plot
## all

names(indonesia)
##  [1] "GID_0"     "NAME_0"    "GID_1"     "NAME_1"    "NL_NAME_1" "GID_2"    
##  [7] "NAME_2"    "VARNAME_2" "NL_NAME_2" "TYPE_2"    "ENGTYPE_2" "CC_2"     
## [13] "HASC_2"    "geometry"
#Mengambil 1 peta
indonesia %>% select(GID_1) %>% plot()

# Melihat nama-nama provinsi
indonesia$NAME_1
##   [1] "Aceh"                "Aceh"                "Aceh"               
##   [4] "Aceh"                "Aceh"                "Aceh"               
##   [7] "Aceh"                "Aceh"                "Aceh"               
##  [10] "Aceh"                "Aceh"                "Aceh"               
##  [13] "Aceh"                "Aceh"                "Aceh"               
##  [16] "Aceh"                "Aceh"                "Aceh"               
##  [19] "Aceh"                "Aceh"                "Aceh"               
##  [22] "Aceh"                "Aceh"                "Bali"               
##  [25] "Bali"                "Bali"                "Bali"               
##  [28] "Bali"                "Bali"                "Bali"               
##  [31] "Bali"                "Bali"                "Bangka Belitung"    
##  [34] "Bangka Belitung"     "Bangka Belitung"     "Bangka Belitung"    
##  [37] "Bangka Belitung"     "Bangka Belitung"     "Bangka Belitung"    
##  [40] "Banten"              "Banten"              "Banten"             
##  [43] "Banten"              "Banten"              "Banten"             
##  [46] "Banten"              "Banten"              "Bengkulu"           
##  [49] "Bengkulu"            "Bengkulu"            "Bengkulu"           
##  [52] "Bengkulu"            "Bengkulu"            "Bengkulu"           
##  [55] "Bengkulu"            "Bengkulu"            "Bengkulu"           
##  [58] "Gorontalo"           "Gorontalo"           "Gorontalo"          
##  [61] "Gorontalo"           "Gorontalo"           "Gorontalo"          
##  [64] "Gorontalo"           "Jakarta Raya"        "Jakarta Raya"       
##  [67] "Jakarta Raya"        "Jakarta Raya"        "Jakarta Raya"       
##  [70] "Jakarta Raya"        "Jambi"               "Jambi"              
##  [73] "Jambi"               "Jambi"               "Jambi"              
##  [76] "Jambi"               "Jambi"               "Jambi"              
##  [79] "Jambi"               "Jambi"               "Jambi"              
##  [82] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
##  [85] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
##  [88] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
##  [91] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
##  [94] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
##  [97] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
## [100] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
## [103] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
## [106] "Jawa Barat"          "Jawa Barat"          "Jawa Barat"         
## [109] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [112] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [115] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [118] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [121] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [124] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [127] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [130] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [133] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [136] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [139] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [142] "Jawa Tengah"         "Jawa Tengah"         "Jawa Tengah"        
## [145] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [148] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [151] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [154] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [157] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [160] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [163] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [166] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [169] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [172] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [175] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [178] "Jawa Timur"          "Jawa Timur"          "Jawa Timur"         
## [181] "Jawa Timur"          "Jawa Timur"          "Kalimantan Barat"   
## [184] "Kalimantan Barat"    "Kalimantan Barat"    "Kalimantan Barat"   
## [187] "Kalimantan Barat"    "Kalimantan Barat"    "Kalimantan Barat"   
## [190] "Kalimantan Barat"    "Kalimantan Barat"    "Kalimantan Barat"   
## [193] "Kalimantan Barat"    "Kalimantan Barat"    "Kalimantan Barat"   
## [196] "Kalimantan Barat"    "Kalimantan Selatan"  "Kalimantan Selatan" 
## [199] "Kalimantan Selatan"  "Kalimantan Selatan"  "Kalimantan Selatan" 
## [202] "Kalimantan Selatan"  "Kalimantan Selatan"  "Kalimantan Selatan" 
## [205] "Kalimantan Selatan"  "Kalimantan Selatan"  "Kalimantan Selatan" 
## [208] "Kalimantan Selatan"  "Kalimantan Selatan"  "Kalimantan Tengah"  
## [211] "Kalimantan Tengah"   "Kalimantan Tengah"   "Kalimantan Tengah"  
## [214] "Kalimantan Tengah"   "Kalimantan Tengah"   "Kalimantan Tengah"  
## [217] "Kalimantan Tengah"   "Kalimantan Tengah"   "Kalimantan Tengah"  
## [220] "Kalimantan Tengah"   "Kalimantan Tengah"   "Kalimantan Tengah"  
## [223] "Kalimantan Tengah"   "Kalimantan Timur"    "Kalimantan Timur"   
## [226] "Kalimantan Timur"    "Kalimantan Timur"    "Kalimantan Timur"   
## [229] "Kalimantan Timur"    "Kalimantan Timur"    "Kalimantan Timur"   
## [232] "Kalimantan Timur"    "Kalimantan Timur"    "Kalimantan Timur"   
## [235] "Kalimantan Timur"    "Kalimantan Timur"    "Kalimantan Timur"   
## [238] "Kepulauan Riau"      "Kepulauan Riau"      "Kepulauan Riau"     
## [241] "Kepulauan Riau"      "Kepulauan Riau"      "Kepulauan Riau"     
## [244] "Kepulauan Riau"      "Lampung"             "Lampung"            
## [247] "Lampung"             "Lampung"             "Lampung"            
## [250] "Lampung"             "Lampung"             "Lampung"            
## [253] "Lampung"             "Lampung"             "Lampung"            
## [256] "Lampung"             "Lampung"             "Lampung"            
## [259] "Maluku"              "Maluku"              "Maluku"             
## [262] "Maluku"              "Maluku"              "Maluku"             
## [265] "Maluku"              "Maluku"              "Maluku"             
## [268] "Maluku"              "Maluku"              "Maluku Utara"       
## [271] "Maluku Utara"        "Maluku Utara"        "Maluku Utara"       
## [274] "Maluku Utara"        "Maluku Utara"        "Maluku Utara"       
## [277] "Maluku Utara"        "Maluku Utara"        "Nusa Tenggara Barat"
## [280] "Nusa Tenggara Barat" "Nusa Tenggara Barat" "Nusa Tenggara Barat"
## [283] "Nusa Tenggara Barat" "Nusa Tenggara Barat" "Nusa Tenggara Barat"
## [286] "Nusa Tenggara Barat" "Nusa Tenggara Barat" "Nusa Tenggara Barat"
## [289] "Nusa Tenggara Timur" "Nusa Tenggara Timur" "Nusa Tenggara Timur"
## [292] "Nusa Tenggara Timur" "Nusa Tenggara Timur" "Nusa Tenggara Timur"
## [295] "Nusa Tenggara Timur" "Nusa Tenggara Timur" "Nusa Tenggara Timur"
## [298] "Nusa Tenggara Timur" "Nusa Tenggara Timur" "Nusa Tenggara Timur"
## [301] "Nusa Tenggara Timur" "Nusa Tenggara Timur" "Nusa Tenggara Timur"
## [304] "Nusa Tenggara Timur" "Nusa Tenggara Timur" "Nusa Tenggara Timur"
## [307] "Nusa Tenggara Timur" "Nusa Tenggara Timur" "Nusa Tenggara Timur"
## [310] "Papua"               "Papua"               "Papua"              
## [313] "Papua"               "Papua"               "Papua"              
## [316] "Papua"               "Papua"               "Papua"              
## [319] "Papua"               "Papua"               "Papua"              
## [322] "Papua"               "Papua"               "Papua"              
## [325] "Papua"               "Papua"               "Papua"              
## [328] "Papua"               "Papua"               "Papua"              
## [331] "Papua"               "Papua"               "Papua"              
## [334] "Papua"               "Papua"               "Papua"              
## [337] "Papua"               "Papua"               "Papua Barat"        
## [340] "Papua Barat"         "Papua Barat"         "Papua Barat"        
## [343] "Papua Barat"         "Papua Barat"         "Papua Barat"        
## [346] "Papua Barat"         "Papua Barat"         "Papua Barat"        
## [349] "Papua Barat"         "Riau"                "Riau"               
## [352] "Riau"                "Riau"                "Riau"               
## [355] "Riau"                "Riau"                "Riau"               
## [358] "Riau"                "Riau"                "Riau"               
## [361] "Riau"                "Sulawesi Barat"      "Sulawesi Barat"     
## [364] "Sulawesi Barat"      "Sulawesi Barat"      "Sulawesi Barat"     
## [367] "Sulawesi Selatan"    "Sulawesi Selatan"    "Sulawesi Selatan"   
## [370] "Sulawesi Selatan"    "Sulawesi Selatan"    "Sulawesi Selatan"   
## [373] "Sulawesi Selatan"    "Sulawesi Selatan"    "Sulawesi Selatan"   
## [376] "Sulawesi Selatan"    "Sulawesi Selatan"    "Sulawesi Selatan"   
## [379] "Sulawesi Selatan"    "Sulawesi Selatan"    "Sulawesi Selatan"   
## [382] "Sulawesi Selatan"    "Sulawesi Selatan"    "Sulawesi Selatan"   
## [385] "Sulawesi Selatan"    "Sulawesi Selatan"    "Sulawesi Selatan"   
## [388] "Sulawesi Selatan"    "Sulawesi Selatan"    "Sulawesi Selatan"   
## [391] "Sulawesi Tengah"     "Sulawesi Tengah"     "Sulawesi Tengah"    
## [394] "Sulawesi Tengah"     "Sulawesi Tengah"     "Sulawesi Tengah"    
## [397] "Sulawesi Tengah"     "Sulawesi Tengah"     "Sulawesi Tengah"    
## [400] "Sulawesi Tengah"     "Sulawesi Tengah"     "Sulawesi Tenggara"  
## [403] "Sulawesi Tenggara"   "Sulawesi Tenggara"   "Sulawesi Tenggara"  
## [406] "Sulawesi Tenggara"   "Sulawesi Tenggara"   "Sulawesi Tenggara"  
## [409] "Sulawesi Tenggara"   "Sulawesi Tenggara"   "Sulawesi Tenggara"  
## [412] "Sulawesi Tenggara"   "Sulawesi Tenggara"   "Sulawesi Utara"     
## [415] "Sulawesi Utara"      "Sulawesi Utara"      "Sulawesi Utara"     
## [418] "Sulawesi Utara"      "Sulawesi Utara"      "Sulawesi Utara"     
## [421] "Sulawesi Utara"      "Sulawesi Utara"      "Sulawesi Utara"     
## [424] "Sulawesi Utara"      "Sulawesi Utara"      "Sulawesi Utara"     
## [427] "Sulawesi Utara"      "Sulawesi Utara"      "Sumatera Barat"     
## [430] "Sumatera Barat"      "Sumatera Barat"      "Sumatera Barat"     
## [433] "Sumatera Barat"      "Sumatera Barat"      "Sumatera Barat"     
## [436] "Sumatera Barat"      "Sumatera Barat"      "Sumatera Barat"     
## [439] "Sumatera Barat"      "Sumatera Barat"      "Sumatera Barat"     
## [442] "Sumatera Barat"      "Sumatera Barat"      "Sumatera Barat"     
## [445] "Sumatera Barat"      "Sumatera Barat"      "Sumatera Barat"     
## [448] "Sumatera Barat"      "Sumatera Selatan"    "Sumatera Selatan"   
## [451] "Sumatera Selatan"    "Sumatera Selatan"    "Sumatera Selatan"   
## [454] "Sumatera Selatan"    "Sumatera Selatan"    "Sumatera Selatan"   
## [457] "Sumatera Selatan"    "Sumatera Selatan"    "Sumatera Selatan"   
## [460] "Sumatera Selatan"    "Sumatera Selatan"    "Sumatera Selatan"   
## [463] "Sumatera Selatan"    "Sumatera Utara"      "Sumatera Utara"     
## [466] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [469] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [472] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [475] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [478] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [481] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [484] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [487] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [490] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [493] "Sumatera Utara"      "Sumatera Utara"      "Sumatera Utara"     
## [496] "Sumatera Utara"      "Sumatera Utara"      "Yogyakarta"         
## [499] "Yogyakarta"          "Yogyakarta"          "Yogyakarta"         
## [502] "Yogyakarta"
# Mengambil daerah Sulawesi Tenggara
Sultra <- indonesia %>%
    subset(indonesia$NAME_1 == "Sulawesi Tenggara")
# Melihat data Sulawesi Tenggara
Sultra
## Simple feature collection with 12 features and 13 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: 120.8645 ymin: -6.218151 xmax: 124.6219 ymax: -2.779383
## Geodetic CRS:  WGS 84
## First 10 features:
##     GID_0    NAME_0    GID_1            NAME_1 NL_NAME_1       GID_2
## 402   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.1_1
## 403   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.2_1
## 404   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.4_1
## 405   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.3_1
## 406   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.5_1
## 407   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.7_1
## 408   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.6_1
## 409   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA> IDN.28.10_1
## 410   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.8_1
## 411   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.9_1
##             NAME_2 VARNAME_2 NL_NAME_2    TYPE_2 ENGTYPE_2 CC_2   HASC_2
## 402        Bau-Bau      <NA>      <NA>      Kota      City 7472 ID.SG.BA
## 403        Bombana      <NA>      <NA> Kabupaten   Regency 7406 ID.SG.BO
## 404          Buton      <NA>      <NA> Kabupaten   Regency 7401 ID.SG.BN
## 405    Buton Utara      <NA>      <NA> Kabupaten   Regency 7409 ID.SG.BT
## 406        Kendari      <NA>      <NA>      Kota      City 7471 ID.SG.KM
## 407         Kolaka      <NA>      <NA> Kabupaten   Regency 7404 ID.SG.KO
## 408   Kolaka Utara      <NA>      <NA> Kabupaten   Regency 7408 ID.SG.KU
## 409         Konawe      <NA>      <NA> Kabupaten   Regency 7403 ID.SG.KN
## 410 Konawe Selatan      <NA>      <NA> Kabupaten   Regency 7405 ID.SG.KS
## 411   Konawe Utara      <NA>      <NA> Kabupaten   Regency 7410 ID.SG.KW
##                           geometry
## 402 MULTIPOLYGON (((122.6305 -5...
## 403 MULTIPOLYGON (((122.0586 -5...
## 404 MULTIPOLYGON (((122.7368 -6...
## 405 MULTIPOLYGON (((123.0521 -4...
## 406 MULTIPOLYGON (((122.6059 -4...
## 407 MULTIPOLYGON (((121.4914 -4...
## 408 MULTIPOLYGON (((121.0525 -3...
## 409 MULTIPOLYGON (((123.1423 -4...
## 410 MULTIPOLYGON (((122.2181 -4...
## 411 MULTIPOLYGON (((122.4865 -3...
# Melihat nama-nama Kabutpaten/Kota di Sulawesi Tenggara
Sultra$NAME_2
##  [1] "Bau-Bau"        "Bombana"        "Buton"          "Buton Utara"   
##  [5] "Kendari"        "Kolaka"         "Kolaka Utara"   "Konawe"        
##  [9] "Konawe Selatan" "Konawe Utara"   "Muna"           "Wakatobi"
#simulasi jumlah penduduk Sulawesi Tenggara dengan jumlah 3 juta orang
#disebar secara acak ke 12 Kabupaten/Kota
jumlahpenduduk = sample(3000000, 12)
jumlahpenduduk
##  [1]  517962 2062807 1354448 1438940 1557579 1630763 1720337 2817522  836488
## [10] 2411557 1164075 2084362
# Menambahkan kolom jumlah penduduk
Sultra <- Sultra %>% add_column(jumlahpenduduk)
# Melihat data Sulawesi Tenggara
Sultra
## Simple feature collection with 12 features and 14 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: 120.8645 ymin: -6.218151 xmax: 124.6219 ymax: -2.779383
## Geodetic CRS:  WGS 84
## First 10 features:
##     GID_0    NAME_0    GID_1            NAME_1 NL_NAME_1       GID_2
## 402   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.1_1
## 403   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.2_1
## 404   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.4_1
## 405   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.3_1
## 406   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.5_1
## 407   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.7_1
## 408   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.6_1
## 409   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA> IDN.28.10_1
## 410   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.8_1
## 411   IDN Indonesia IDN.28_1 Sulawesi Tenggara      <NA>  IDN.28.9_1
##             NAME_2 VARNAME_2 NL_NAME_2    TYPE_2 ENGTYPE_2 CC_2   HASC_2
## 402        Bau-Bau      <NA>      <NA>      Kota      City 7472 ID.SG.BA
## 403        Bombana      <NA>      <NA> Kabupaten   Regency 7406 ID.SG.BO
## 404          Buton      <NA>      <NA> Kabupaten   Regency 7401 ID.SG.BN
## 405    Buton Utara      <NA>      <NA> Kabupaten   Regency 7409 ID.SG.BT
## 406        Kendari      <NA>      <NA>      Kota      City 7471 ID.SG.KM
## 407         Kolaka      <NA>      <NA> Kabupaten   Regency 7404 ID.SG.KO
## 408   Kolaka Utara      <NA>      <NA> Kabupaten   Regency 7408 ID.SG.KU
## 409         Konawe      <NA>      <NA> Kabupaten   Regency 7403 ID.SG.KN
## 410 Konawe Selatan      <NA>      <NA> Kabupaten   Regency 7405 ID.SG.KS
## 411   Konawe Utara      <NA>      <NA> Kabupaten   Regency 7410 ID.SG.KW
##                           geometry jumlahpenduduk
## 402 MULTIPOLYGON (((122.6305 -5...         517962
## 403 MULTIPOLYGON (((122.0586 -5...        2062807
## 404 MULTIPOLYGON (((122.7368 -6...        1354448
## 405 MULTIPOLYGON (((123.0521 -4...        1438940
## 406 MULTIPOLYGON (((122.6059 -4...        1557579
## 407 MULTIPOLYGON (((121.4914 -4...        1630763
## 408 MULTIPOLYGON (((121.0525 -3...        1720337
## 409 MULTIPOLYGON (((123.1423 -4...        2817522
## 410 MULTIPOLYGON (((122.2181 -4...         836488
## 411 MULTIPOLYGON (((122.4865 -3...        2411557
# Membuat Peta Sulawesi Tenggara
pal <- colorNumeric(
  palette = "YlGnBu",
  domain = Sultra$jumlahpenduduk
)

m <- leaflet(Sultra) %>%
  addTiles() %>% 
addPolygons(
    color = ~pal(jumlahpenduduk),
    weight = 2,
    opacity = 1,
    dashArray = "3",
    fillOpacity = 0.7,
    
        highlight = highlightOptions(
      weight = 5,
      color = "#666",
      dashArray = "",
      fillOpacity = 0.7,
      bringToFront = TRUE),
    
    label = paste0(Sultra$NAME_2, " ", Sultra$jumlahpenduduk),
    
    labelOptions = labelOptions(
      style = list("font-weight" = "normal", padding = "3px 8px"),
      textsize = "15px",
      direction = "auto")
) 
m
# Menambahkan Legend Pada Peta Sulawesi Tenggara
pal <- colorNumeric(
  palette = "YlGnBu",
  domain = Sultra$jumlahpenduduk
)

m <- leaflet(Sultra) %>%
  addTiles() %>% 
addPolygons(
    color = ~pal(jumlahpenduduk),
    weight = 2,
    opacity = 1,
    dashArray = "3",
    fillOpacity = 0.7,

        highlight = highlightOptions(
      weight = 5,
      color = "#666",
      dashArray = "",
      fillOpacity = 0.7,
      bringToFront = TRUE),

    label = paste0(Sultra$NAME_2, " ", Sultra$jumlahpenduduk),
    
    labelOptions = labelOptions(
      style = list("font-weight" = "normal", padding = "3px 8px"),
      textsize = "15px",
      direction = "auto")
  
) %>%
  addLegend(
  position = "bottomright",
  pal = pal,
  values = ~jumlahpenduduk,
  title = "Jumlah Penduduk"
)

m
#Membuat Koordinat Titik Tengah Setiap Wilayah
library(sf)
library(ggplot2)
nc <- st_read(path1)
## Reading layer `gadm36_IDN_2' from data source 
##   `E:\Irvan\PETA UNTUK YOUTUBE PAPUA\gadm36_IDN_2.shp' using driver `ESRI Shapefile'
## Simple feature collection with 502 features and 13 fields
## Geometry type: MULTIPOLYGON
## Dimension:     XY
## Bounding box:  xmin: 95.0097 ymin: -11.00762 xmax: 141.0194 ymax: 6.076941
## Geodetic CRS:  WGS 84
nc <- nc %>%
    subset(nc$NAME_1 == "Sulawesi Tenggara") %>%
   dplyr::select(NAME_2)
sf_cent <- st_centroid(nc)
## Warning in st_centroid.sf(nc): st_centroid assumes attributes are constant over
## geometries of x
class(sf_cent)
## [1] "sf"         "data.frame"
A = sf_cent[2]
datakoordinat = st_coordinates(A)

datakoordinat
##           X         Y
## 1  122.6753 -5.429898
## 2  121.8507 -4.797686
## 3  122.7333 -5.367801
## 4  123.0160 -4.701452
## 5  122.5326 -4.000391
## 6  121.5765 -3.927887
## 7  121.1563 -3.247666
## 8  122.0348 -3.597952
## 9  122.4208 -4.262691
## 10 121.9969 -3.385118
## 11 122.5954 -4.902196
## 12 123.7951 -5.575268
xlong = datakoordinat[,1]
ylat = datakoordinat[,2]
xlong
##        1        2        3        4        5        6        7        8 
## 122.6753 121.8507 122.7333 123.0160 122.5326 121.5765 121.1563 122.0348 
##        9       10       11       12 
## 122.4208 121.9969 122.5954 123.7951
ylat
##         1         2         3         4         5         6         7         8 
## -5.429898 -4.797686 -5.367801 -4.701452 -4.000391 -3.927887 -3.247666 -3.597952 
##         9        10        11        12 
## -4.262691 -3.385118 -4.902196 -5.575268
# Memberi label dan jumlah penduduk tiap Kabupaten/Kota
pal <- colorNumeric(
  palette = "YlGnBu",
  domain = Sultra$jumlahpenduduk
)
gambarpeta <- leaflet(Sultra) %>%
  addTiles() %>% 
addPolygons(
    color = ~pal(jumlahpenduduk),
    weight = 2,
    opacity = 1,
    dashArray = "3",
    fillOpacity = 0.7,
    
        highlight = highlightOptions(
      weight = 5,
      color = "#666",
      dashArray = "",
      fillOpacity = 0.7,
      bringToFront = TRUE),
    
    label = paste0(Sultra$NAME_2, " ", Sultra$jumlahpenduduk),
    
    labelOptions = labelOptions(
      style = list("font-weight" = "normal", padding = "3px 8px"),
      textsize = "15px",
      direction = "auto")
 
) %>%
  addLegend(
  position = "bottomright",
  pal = pal,
  values = ~jumlahpenduduk,
  title = "Jumlah Penduduk"
) %>%
  addMarkers(xlong, ylat, 
    label = paste0(Sultra$NAME_2, " ", Sultra$jumlahpenduduk) ,
     labelOptions = labelOptions(noHide = T, textsize = "1px", direction = "bottom",
      style = list(
        "color" = "red",
        "font-family" = "serif",
        "font-style" = "italic",
        "box-shadow" = "3px 3px rgba(0,0,0,0.25)",
        "font-size" = "12px",
        "border-color" = "rgba(0,0,0,0.5)"
      ))
    
    )

gambarpeta