## ----setup, include = FALSE--------------------------------------------------- knitr::opts_chunk$set( collapse = TRUE, comment = "#>", message = FALSE, warning = FALSE, fig.height = 7, fig.width = 7, dpi = 75 ) ## ----eval = FALSE------------------------------------------------------------- # # install from CRAN # install.packages("geofi") # # # Install development version from GitHub # remotes::install_github("ropengov/geofi") ## ----include = FALSE, eval = TRUE--------------------------------------------- # Let's first create a function that checks if the suggested # packages are available check_namespaces <- function(pkgs){ return(all(unlist(sapply(pkgs, requireNamespace,quietly = TRUE)))) } apiacc <- geofi::check_api_access() pkginst <- check_namespaces(c("geofacet","ggplot2","dplyr")) apiacc_pkginst <- all(apiacc,pkginst) ## ----municipality_keys, eval = pkginst---------------------------------------- library(geofi) library(dplyr) d <- data(package = "geofi") as_tibble(d$results) %>% select(Item,Title) %>% filter(grepl("municipality_key", Item)) ## ----municipality_key_names, eval = TRUE-------------------------------------- names(geofi::municipality_key_2023) ## ----municipality_key_maakunta, eval = pkginst-------------------------------- geofi::municipality_key_2023 %>% count(maakunta_code,maakunta_name_fi,maakunta_name_sv,maakunta_name_en) ## ----municipality_map, fig.height = 7, fig.width = 4, eval = apiacc_pkginst---- municipalities <- get_municipalities(year = 2023, scale = 4500) plot(municipalities["municipality_name_fi"], border = NA) ## ----muni_pop_map1, fig.height = 7, fig.width = 4, eval = apiacc_pkginst------ get_municipality_pop(year = 2022) %>% subset(select = miehet_p) %>% plot() ## ----muni_pop_map2, fig.height = 7, fig.width = 4, eval = apiacc_pkginst------ get_municipality_pop(year = 2022) %>% group_by(hyvinvointialue_name_fi) %>% summarise(vaesto = sum(vaesto)) %>% select(vaesto) %>% plot() ## ----muni_pop_map3, fig.height = 7, fig.width = 4, eval = apiacc_pkginst------ get_municipality_pop(year = 2022) %>% dplyr::group_by(hyvinvointialue_name_fi) %>% summarise(vaesto = sum(vaesto), miehet = sum(miehet)) %>% mutate(share = miehet/vaesto*100) %>% select(share) %>% plot() ## ----zipcode_map, fig.height = 7, fig.width = 4, eval = apiacc_pkginst-------- zipcodes <- get_zipcodes(year = 2023) plot(zipcodes["nimi"], border = NA) ## ----statisticsl_grid_data, fig.height = 7, fig.width = 4, eval = apiacc_pkginst---- stat_grid <- get_statistical_grid(resolution = 5, auxiliary_data = TRUE) plot(stat_grid["euref_x"], border = NA) ## ----population_grid_data, fig.height = 7, fig.width = 4, eval = apiacc_pkginst---- pop_grid <- get_population_grid(year = 2018, resolution = 5) plot(pop_grid["kunta"], border = NA) ## ----central_localities, fig.height = 7, fig.width = 4, eval = apiacc_pkginst---- plot(municipality_central_localities["teksti"]) ## ----geofacets, eval = apiacc_pkginst----------------------------------------- d <- data(package = "geofi") as_tibble(d$results) %>% select(Item,Title) %>% filter(grepl("grid", Item)) %>% print(n = 100) ## ----geofacet, fig.height = 8, fig.width = 10, eval = apiacc_pkginst---------- # Let pull population data from THL sotkadata <- geofi::sotkadata_population # lets aggregate population data dat <- left_join(geofi::municipality_key_2023 %>% select(-year), sotkadata) %>% group_by(maakunta_code, maakunta_name_fi,year) %>% summarise(population = sum(primary.value, na.rm = TRUE)) %>% na.omit() %>% ungroup() %>% rename(code = maakunta_code, name = maakunta_name_fi) library(geofacet) library(ggplot2) ggplot(dat, aes(x = year, y = population/1000, group = name)) + geom_line() + facet_geo(facets = ~name, grid = grid_maakunta, scales = "free_y") + theme(axis.text.x = element_text(size = 6)) + scale_x_discrete(breaks = seq.int(from = 2000, to = 2023, by = 5)) + labs(title = unique(sotkadata$indicator.title.fi), y = "%")