Install basic packages

r = getOption("repos")
r["CRAN"] = "http://cran.us.r-project.org"
options(repos = r)
install.packages("weatherData")
## Warning: package 'weatherData' is not available for this version of R
## 
## A version of this package for your version of R might be available elsewhere,
## see the ideas at
## https://cran.r-project.org/doc/manuals/r-patched/R-admin.html#Installing-packages
install.packages("readxl")
## 
## The downloaded binary packages are in
##  /var/folders/q9/qf6gvd_s3jq45qz9brh6jy800000gn/T//RtmpTnHpIw/downloaded_packages
install.packages("tidyverse")
## 
## The downloaded binary packages are in
##  /var/folders/q9/qf6gvd_s3jq45qz9brh6jy800000gn/T//RtmpTnHpIw/downloaded_packages
library(readxl)
## Warning: package 'readxl' was built under R version 4.1.2
library(tidyverse)
## Warning: package 'tidyverse' was built under R version 4.1.2
## ── Attaching packages ─────────────────────────────────────── tidyverse 1.3.2 ──
## ✔ ggplot2 3.4.0      ✔ purrr   0.3.5 
## ✔ tibble  3.1.8      ✔ dplyr   1.0.10
## ✔ tidyr   1.2.1      ✔ stringr 1.4.1 
## ✔ readr   2.1.3      ✔ forcats 0.5.2
## Warning: package 'tibble' was built under R version 4.1.2
## Warning: package 'tidyr' was built under R version 4.1.2
## Warning: package 'readr' was built under R version 4.1.2
## Warning: package 'purrr' was built under R version 4.1.2
## Warning: package 'dplyr' was built under R version 4.1.2
## Warning: package 'stringr' was built under R version 4.1.2
## Warning: package 'forcats' was built under R version 4.1.2
## ── Conflicts ────────────────────────────────────────── tidyverse_conflicts() ──
## ✖ dplyr::filter() masks stats::filter()
## ✖ dplyr::lag()    masks stats::lag()
library(ggplot2)
install.packages("pscl", repos = "https://cran.rstudio.com")
## 
## The downloaded binary packages are in
##  /var/folders/q9/qf6gvd_s3jq45qz9brh6jy800000gn/T//RtmpTnHpIw/downloaded_packages
setwd("~/Downloads")

Install mapping packages

install.packages("ggiraphExtra")
## 
## The downloaded binary packages are in
##  /var/folders/q9/qf6gvd_s3jq45qz9brh6jy800000gn/T//RtmpTnHpIw/downloaded_packages
library(ggiraphExtra)
## Warning: package 'ggiraphExtra' was built under R version 4.1.2

Install map packages

devtools::install_github("cardiomoon/kormaps2014")
## Skipping install of 'kormaps2014' from a github remote, the SHA1 (873f3c5d) has not changed since last install.
##   Use `force = TRUE` to force installation
library(kormaps2014)
str(changeCode(kormap1))
## 'data.frame':    8831 obs. of  15 variables:
##  $ id       : chr  "0" "0" "0" "0" ...
##  $ long     : chr  "137.774352627938" "137.779270931415" "137.780545929866" "137.814504843261" ...
##  $ lat      : chr  "50.6883045072662" "50.6899249663447" "50.6900586920365" "50.6937941360883" ...
##  $ order    : chr  "1" "2" "3" "4" ...
##  $ hole     : chr  "FALSE" "FALSE" "FALSE" "FALSE" ...
##  $ piece    : chr  "1" "1" "1" "1" ...
##  $ group    : chr  "0.1" "0.1" "0.1" "0.1" ...
##  $ SP_ID    : chr  "0" "0" "0" "0" ...
##  $ SIDO_CD  : chr  "11" "11" "11" "11" ...
##  $ SIDO_NM  : chr  NA NA NA NA ...
##  $ BASE_YEAR: chr  "2014" "2014" "2014" "2014" ...
##  $ name     : chr  "\xbc\xad\xbf\xefƯ\xba\xb0\xbd\xc3" "\xbc\xad\xbf\xefƯ\xba\xb0\xbd\xc3" "\xbc\xad\xbf\xefƯ\xba\xb0\xbd\xc3" "\xbc\xad\xbf\xefƯ\xba\xb0\xbd\xc3" ...
##  $ name1    : chr  NA NA NA NA ...
##  $ region   : chr  "11" "11" "11" "11" ...
##  $ code     : chr  "11" "11" "11" "11" ...
kormap1
install.packages("stringi")
## 
## The downloaded binary packages are in
##  /var/folders/q9/qf6gvd_s3jq45qz9brh6jy800000gn/T//RtmpTnHpIw/downloaded_packages
library(stringi)
## Warning: package 'stringi' was built under R version 4.1.2
str(korpop1)
## 'data.frame':    17 obs. of  25 variables:
##  $ C행정구역별_읍면동     : Factor w/ 3819 levels "'00","'03","'04",..: 5 455 681 832 995 1096 1181 1246 1264 1874 ...
##  $ 행정구역별_읍면동      : Factor w/ 3398 levels "  가경동","  가곡동",..: 3388 3387 3383 3392 3382 3384 3390 3389 3379 3378 ...
##  $ 시점                   : int  2015 2015 2015 2015 2015 2015 2015 2015 2015 2015 ...
##  $ 총인구_명              : int  9904312 3448737 2466052 2890451 1502881 1538394 1166615 204088 12479061 1518040 ...
##  $ 남자_명                : int  4859535 1701347 1228511 1455017 748867 772243 606924 103210 6309661 768241 ...
##  $ 여자_명                : int  5044777 1747390 1237541 1435434 754014 766151 559691 100878 6169400 749799 ...
##  $ 내국인_계_명           : int  9567196 3404667 2436770 2822601 1481289 1519314 1136755 199617 12026429 1499734 ...
##  $ 내국인_남자_명         : int  4694317 1675339 1211219 1414793 736656 763310 587603 100455 6039800 758601 ...
##  $ 내국인_여자_명         : int  4872879 1729328 1225551 1407808 744633 756004 549152 99162 5986629 741133 ...
##  $ 외국인_계_명           : Factor w/ 1256 levels "10","100","1009",..: 618 764 554 1024 394 330 563 772 781 306 ...
##  $ 외국인_남자_명         : Factor w/ 995 levels "10","100","1002",..: 200 388 224 589 82 952 262 413 401 985 ...
##  $ 외국인_여자_명         : Factor w/ 856 levels "10","100","1000",..: 174 189 66 350 840 8 25 173 196 812 ...
##  $ 가구_계_가구           : int  3914820 1348315 937573 1066297 573181 588395 434058 76419 4537581 611578 ...
##  $ 일반가구_가구          : int  3784490 1335900 928528 1045417 567157 582504 423412 75219 4384742 606117 ...
##  $ 집단가구_가구          : Factor w/ 176 levels "10","100","102",..: 64 143 129 148 109 104 68 139 99 155 ...
##  $ 외국인가구_가구        : Factor w/ 764 levels "10","100","10002",..: 75 46 709 214 579 574 15 35 126 523 ...
##  $ 주택_계_호             : int  2793244 1164352 738100 942244 486527 468885 357674 81130 3693557 569899 ...
##  $ 단독주택_호            : Factor w/ 2149 levels "100","1000","1001",..: 1443 1090 594 34 2019 1941 1777 606 1614 1122 ...
##  $ 아파트_호              : Factor w/ 2466 levels "10","100","10008",..: 517 2103 1622 1787 1281 1161 879 1886 873 1031 ...
##  $ 연립주택_호            : Factor w/ 875 levels "10","100","1002",..: 54 424 857 266 773 4 782 874 67 241 ...
##  $ 다세대주택_호          : Factor w/ 1428 levels "10","100","1000",..: 1192 269 1064 551 1331 803 580 251 1073 60 ...
##  $ 비거주용_건물내_주택_호: Factor w/ 534 levels "10","100","1001",..: 279 94 17 473 391 384 421 431 294 19 ...
##  $ 주택이외의_거처_호     : Factor w/ 911 levels "10","100","1007",..: 159 643 167 550 26 27 805 295 200 84 ...
##  $ C행정구역별            : chr  "11" "21" "22" "23" ...
##  $ code                   : chr  "11" "21" "22" "23" ...
korpop1$name <- NA
library(dplyr)
korpop1$name <- iconv(korpop1$name, "UTF-8", "CP949")
ggChoropleth(data = korpop1,
             aes(fill = 'pop',
                 map_id = code,
                 tooltip = name),
             map = kormap1,
             interactive = T)
library(kormaps2014)
korpop1
library(dplyr)
install.packages("ggthemes")
## 
## The downloaded binary packages are in
##  /var/folders/q9/qf6gvd_s3jq45qz9brh6jy800000gn/T//RtmpTnHpIw/downloaded_packages
library(ggthemes)
## 
## Attaching package: 'ggthemes'
## The following object is masked from 'package:ggiraphExtra':
## 
##     theme_clean
epsmap <- read_excel("eps_map.xlsx")
epsmap
epsmap$code <- iconv(epsmap$code, "UTF-8", "CP949")
ggChoropleth(data = epsmap, aes(fill = Migrants, map_id = code, tooltip = region), map = kormap1, interactive = T, palette = 'Blues', color = 'black', title = "Migrant workers in Korea (as of 2022)",
             digits = 1)