Load required packages
library(rGhanaCensus)
library(sf)
#> Linking to GEOS 3.9.1, GDAL 3.2.1, PROJ 7.2.1; sf_use_s2() is TRUE
library(tmap)
#> Warning: multiple methods tables found for 'direction'
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
library(magrittr)
Create a interactive map with the package tmap
and data from the package rGhanaCensus
that displays the regional distribution of the Percentage of students 3 years or older who have dropped out of school.
Load geometry data Ghana_2021_school_attendance_geometry
from rGhanaCensus
package.
data("Ghana_2021_school_attendance_geometry", package = "rGhanaCensus")
Convert it to sf
data frame and assign a new name. In this example, “Ghana_edu_sf” will be the name of the sf
data frame created.
<- sf::st_as_sf(Ghana_2021_school_attendance_geometry) Ghana_edu_sf
The code Ghana_edu_sf %>%filter(Locality=="Urban")
subsets the data frame and retains only the rows that the survey respondents came from Urban areas.
Ghana_edu_sf %>%filter(Locality=="Rural")
can be used to retain observations from Rural areas.
Use tmap_mode("view")
to create interactive map. A static map is plotted here with tmap_mode("plot")
#Use tmap to create interactive map
tmap_mode("plot")
#> tmap mode set to plotting
%>%
Ghana_edu_sf ::filter(Locality=="Urban") %>%
dplyrtm_shape()+
tm_polygons(id="Region", col="Region",palette="YlOrRd",
title="Percentage of School drop-outs")+
tm_text(text="Percent_Dropped_out_of_School", size=0.7)+
tm_facets(by="Gender")
#> Some legend labels were too wide. These labels have been resized to 0.66, 0.49, 0.66, 0.61, 0.58, 0.49. Increase legend.width (argument of tm_layout) to make the legend wider and therefore the labels larger.
The code tm_facets(by="Gender")
specifies facets (multiple maps) by Gender.
Create a interactive map with the package tmap
and data from the package rGhanaCensus
that displays the regional distribution of population densities of students 3 years or older who have dropped out of school.
#Load geometry data
data("Ghana_2021_school_attendance_geometry", package = "rGhanaCensus")
#Convert to sf data frame
<- sf::st_as_sf(Ghana_2021_school_attendance_geometry) Ghana_edu_sf
Use tmap_mode("view")
to create interactive map. A static map is plotted here with tmap_mode("plot")
.
The convert2density
argument in the tm_polygon
function calculates the population density using the raw count values of the variable Dropped_out_of_School
where the area size is in this case approximated from the shape object.
tmap_mode("plot")
#> tmap mode set to plotting
%>%
Ghana_edu_sf ::filter(Locality=="Urban") %>%
dplyrtm_shape()+
tm_polygons(id="Region",col="Dropped_out_of_School", palette = "RdPu",
style="kmeans", convert2density = TRUE,
title="Population density of School drop-outs")+
tm_text(text="Region", size=0.7)+
tm_facets(by="Gender")
#> Some legend labels were too wide. These labels have been resized to 0.65, 0.52, 0.48. Increase legend.width (argument of tm_layout) to make the legend wider and therefore the labels larger.