TL;DR
Ce chapître résume d’un bloc comment on peut réaliser une carte avec R.
On charge les packages.
## Linking to GEOS 3.6.1, GDAL 2.2.3, PROJ 4.9.3
## here() starts at D:/r-cartostat
On charge les données et on les recode si besoin.
bmo_secteur <- read_xlsx("data/dataset/bmo_2019_secteur.xlsx")
bmo_dep <- bmo_secteur %>%
group_by(dep) %>%
summarise(nb_proj_tot = sum(nb_proj_tot),
nb_proj_diff = sum(nb_proj_diff)) %>%
mutate(
part_diff = nb_proj_diff / nb_proj_tot * 100,
part_diff_classes = cut(
part_diff,
include.lowest = TRUE,
breaks = c(0, 40, 50, 60, 100),
labels = c("Moins de 40 %", "40-50 %", "50-60 %", "60% et plus")
)
)
On importe le fond de carte.
## Reading layer `FR_DEP_DOM_IDF' from data source `D:\r-cartostat\data\shp\FR_DEP_DOM_IDF.shp' using driver `ESRI Shapefile'
## Simple feature collection with 109 features and 3 fields
## geometry type: MULTIPOLYGON
## dimension: XY
## bbox: xmin: 99787.91 ymin: 5990209 xmax: 1242106 ymax: 7283675
## epsg (SRID): NA
## proj4string: +proj=lcc +lat_1=49 +lat_2=44 +lat_0=46.5 +lon_0=3 +x_0=700000 +y_0=6600000 +ellps=GRS80 +units=m +no_defs
On les fusionne.
## Warning: Column `code_dep`/`dep` joining factor and character vector, coercing into character vector
On réalise la carte, par exemple par aplat de couleur. Avec les élements d’échelles et de thème.
ggplot() +
geom_sf(data = bmo_dep_shp,
aes(fill = part_diff_classes)) +
scale_fill_viridis_d(name = "",
option = "inferno",
direction = -1) +
labs(title = "Part des projets difficiles",
caption = "Source : BMO 2019") +
theme_void()
Ou par cercles proportionnels.
ggplot(data = bmo_dep_shp) +
geom_sf() +
stat_sf_coordinates(aes(size = nb_proj_tot,
color = part_diff)) +
scale_color_viridis_c(name = "Part des projets difficiles",
option = "plasma",
direction = -1) +
scale_size_continuous(range = c(1, 10), name = "Nombre de projets") +
labs(caption = "Source : BMO 2019") +
theme_void()
On exporte.