Skip to content

Commit

Permalink
correction exercices
Browse files Browse the repository at this point in the history
  • Loading branch information
rCarto committed Jan 11, 2023
1 parent c70895a commit 2e3f3af
Show file tree
Hide file tree
Showing 6 changed files with 361 additions and 347 deletions.
274 changes: 137 additions & 137 deletions 03_mise_en_page.Rmd
Original file line number Diff line number Diff line change
Expand Up @@ -417,141 +417,141 @@ mf_scale(1, pos = 'bottomleft')
6. Comment rendre la carte plus intelligible ? Allez-y !


<!-- ```{r exoa, echo=TRUE, eval = TRUE} -->
<!-- library(mapsf) -->
<!-- # import des communes du Lot -->
<!-- com <- st_read("data/lot46.gpkg", layer = "commune", quiet = TRUE) -->
<!-- # import des départments français -->
<!-- dep <- st_read("data/lot46.gpkg", layer = "departement", quiet = TRUE) -->
<!-- # Nombre total d'actifs -->
<!-- com$ACT <- com$AGR_H + com$AGR_F + com$IND_H + com$IND_F + com$BTP_H + -->
<!-- com$BTP_F + com$TER_H + com$TER_F -->
<!-- # Nombre d'actifs dans l'industrie -->
<!-- com$IND <- com$IND_F + com$IND_H -->
<!-- # Part des actifs travaillant dans l'industrie -->
<!-- com$PART_ACT_IND <- 100 * com$IND / com$ACT -->

<!-- # Création d'un thème personnalisé -->
<!-- th <- mf_theme("green", mar = c(0,0,1.5,0), pos = "left") -->

<!-- # Cartographie du nombre total de travailleurs de l'industrie -->
<!-- mf_export(com, "img/n_ind.png", theme = th, -->
<!-- width = 800) -->
<!-- mf_map(x = com, border = "white", lwd = .2, add = T) -->
<!-- mf_map(x = dep, lwd = 1, col = NA, add = TRUE, lend = 0) -->
<!-- mf_map(x = com, var = "IND", type = "prop", -->
<!-- leg_title = "Nombre d'actifs\ntravaillant dans\nl'industrie") -->
<!-- mf_title("Répartition des actifs travaillant dans l'industrie - 2017") -->
<!-- mf_scale(5) -->
<!-- mf_arrow(pos = "topright") -->
<!-- # notez l'utilisation ici de paste0() qui permet de concatener des chaines -->
<!-- # de caractères et de \n qui permet d'aller à la ligne -->
<!-- mf_credits(paste0("Admin Express COG Carto 3.0, IGN - 2021 & ", -->
<!-- "BD CARTO® 4.0, IGN - 2021 ; Recensements harmonisés - ", -->
<!-- "Séries départementales et communales, INSEE - 2020\n", -->
<!-- "Auteurs : T. Giraud & H. Pecout, 2022")) -->
<!-- dev.off() -->
<!-- ``` -->



<!-- ![](img/n_ind.png) -->
<!-- ```{r exob, echo=TRUE, eval = TRUE} -->
<!-- # Cartographie de la part des actifs travaillant dans l'industrie -->
<!-- ## Quelle est la forme de la distribution que nous voulons cartographier ? -->
<!-- hist(com$PART_ACT_IND) -->
<!-- boxplot(com$PART_ACT_IND, horizontal = TRUE) -->
<!-- summary(com$PART_ACT_IND) -->

<!-- #### > Seules 2 communes ont 100% de travailleurs dans l'industrie -->
<!-- #### Ces communes ont moins de 15 actifs -->
<!-- # Sélection des communes ayant plus de 15 actifs -->
<!-- com_sel <- com[com$ACT > 15, ] -->
<!-- ## Quelle est la forme de cette (nouvelle) distribution -->
<!-- hist(com_sel$PART_ACT_IND) -->
<!-- boxplot(com_sel$PART_ACT_IND, horizontal = TRUE) -->
<!-- summary(com_sel$PART_ACT_IND) -->

<!-- # Creation d'un vecteur contenant les limites de classes en -->
<!-- # utilisant la méthode des quantiles -->
<!-- bks <- mf_get_breaks(com_sel$PART_ACT_IND, nbreaks = 5, -->
<!-- breaks = "quantile") -->
<!-- hist(com_sel$PART_ACT_IND, bks) -->


<!-- mf_export(com, "img/s_ind.png", theme = th, -->
<!-- width = 800) -->
<!-- # Cartographie -->
<!-- mf_map(x = com, -->
<!-- var = "PART_ACT_IND", -->
<!-- type = "choro", -->
<!-- breaks = bks, # Utilisation des bornes de classes créées précédement -->
<!-- leg_val_rnd = 0, # arrondir les valeurs dans la légende -->
<!-- pal = "Red-Yellow", # Utilisation d'une palette de couleur -->
<!-- leg_title = "Part des actifs\ntravaillant dans\nl'industrie", -->
<!-- add = TRUE, -->
<!-- col_na = "grey", -->
<!-- leg_no_data = "Communes de moins de 15 actifs") # texte du no data dans la légende -->
<!-- mf_title("Répartition des actifs travaillant dans l'industrie - 2017") -->
<!-- mf_scale(5) -->
<!-- mf_arrow(pos = "topright") -->
<!-- mf_credits(paste0("Admin Express COG Carto 3.0, IGN - 2021 & ", -->
<!-- "BD CARTO® 4.0, IGN - 2021 ; Recensements harmonisés - ", -->
<!-- "Séries départementales et communales, INSEE - 2020\n", -->
<!-- "Auteurs : T. Giraud & H. Pecout, 2022")) -->
<!-- dev.off() -->
<!-- ``` -->

<!-- ![](img/s_ind.png) -->

<!-- Nous allons maintenant combiner le nombre total d'actifs et la parts des travailleurs de l'industrie. -->
<!-- ```{r exoc, echo=TRUE, eval = TRUE} -->
<!-- mf_export(com, "img/c_ind.png", theme = th, -->
<!-- width = 800) -->
<!-- mf_map(x = com, border = "white", lwd = .2, add = T) -->
<!-- mf_map(x = dep, lwd = 1, col = NA, add = TRUE, lend = 0) -->
<!-- mf_map(com, c("ACT", "PART_ACT_IND"), "prop_choro", -->
<!-- breaks = bks, -->
<!-- pal = "Red-Yellow", -->
<!-- inches = .4, -->
<!-- border = "white", lwd = .7, -->
<!-- leg_val_rnd = c(0,1), -->
<!-- leg_pos = c(538000,6442000, 538000, 6424000), # ici les légendes sont positionnées manuellement -->
<!-- leg_title = c("Nombre d'actifs*", -->
<!-- "Part des actifs\ndans l'industrie (en %)"), -->
<!-- col_na = "grey", -->
<!-- leg_no_data = "Communes de moins de 15 actifs") -->

<!-- # Ajout d'annotations -->
<!-- mf_annotation(x = com[com$NOM_COM=="Biars-sur-Cère",], -->
<!-- txt = "Andros", -->
<!-- col_arrow = th$fg, halo = T, cex = 1) -->
<!-- mf_annotation(x = com[com$NOM_COM=="Figeac",], -->
<!-- txt = "Industrie\naéronautique", -->
<!-- col_arrow = th$fg, pos = "bottomright", halo = T, cex = 1) -->
<!-- mf_annotation(x = com[com$NOM_COM=="Gramat",], -->
<!-- txt = "La Quercynoise (?)", -->
<!-- col_arrow = th$fg, pos = "topleft", s = 1, halo = T, -->
<!-- cex = 1) -->

<!-- mf_title("Répartition des actifs travaillant dans l'industrie - 2017") -->

<!-- # ajout d'un carton -> -->
<!-- mf_inset_on(fig = c(.8,0.98,0.1,0.3)) -->
<!-- mf_map(dep, lwd = .1) -->
<!-- mf_map(com, border = NA, add = T, col = th$fg) -->
<!-- box(col = th$fg, lwd = .5) -->
<!-- mf_inset_off() -->
<!-- # <- fin du carton -->
<!-- mf_scale(5) -->
<!-- mf_arrow("topright") -->
<!-- mf_credits(paste0("Admin Express COG Carto 3.0, IGN - 2021 & ", -->
<!-- "BD CARTO® 4.0, IGN - 2021 ; Recensements harmonisés - ", -->
<!-- "Séries départementales et communales, INSEE - 2020\n", -->
<!-- "Auteurs : T. Giraud & H. Pecout, 2022")) -->
<!-- dev.off() -->

<!-- ``` -->

<!-- ![](img/c_ind.png) -->
```{r exoa, echo=TRUE, eval = TRUE}
library(mapsf)
# import des communes du Lot
com <- st_read("data/lot46.gpkg", layer = "commune", quiet = TRUE)
# import des départments français
dep <- st_read("data/lot46.gpkg", layer = "departement", quiet = TRUE)
# Nombre total d'actifs
com$ACT <- com$AGR_H + com$AGR_F + com$IND_H + com$IND_F + com$BTP_H +
com$BTP_F + com$TER_H + com$TER_F
# Nombre d'actifs dans l'industrie
com$IND <- com$IND_F + com$IND_H
# Part des actifs travaillant dans l'industrie
com$PART_ACT_IND <- 100 * com$IND / com$ACT
# Création d'un thème personnalisé
th <- mf_theme("green", mar = c(0,0,1.5,0), pos = "left")
# Cartographie du nombre total de travailleurs de l'industrie
mf_export(com, "img/n_ind.png", theme = th,
width = 800)
mf_map(x = com, border = "white", lwd = .2, add = T)
mf_map(x = dep, lwd = 1, col = NA, add = TRUE, lend = 0)
mf_map(x = com, var = "IND", type = "prop",
leg_title = "Nombre d'actifs\ntravaillant dans\nl'industrie")
mf_title("Répartition des actifs travaillant dans l'industrie - 2017")
mf_scale(5)
mf_arrow(pos = "topright")
# notez l'utilisation ici de paste0() qui permet de concatener des chaines
# de caractères et de \n qui permet d'aller à la ligne
mf_credits(paste0("Admin Express COG Carto 3.0, IGN - 2021 & ",
"BD CARTO® 4.0, IGN - 2021 ; Recensements harmonisés - ",
"Séries départementales et communales, INSEE - 2020\n",
"Auteurs : T. Giraud & H. Pecout, 2022"))
dev.off()
```



![](img/n_ind.png)
```{r exob, echo=TRUE, eval = TRUE}
# Cartographie de la part des actifs travaillant dans l'industrie
## Quelle est la forme de la distribution que nous voulons cartographier ?
hist(com$PART_ACT_IND)
boxplot(com$PART_ACT_IND, horizontal = TRUE)
summary(com$PART_ACT_IND)
#### > Seules 2 communes ont 100% de travailleurs dans l'industrie
#### Ces communes ont moins de 15 actifs
# Sélection des communes ayant plus de 15 actifs
com_sel <- com[com$ACT > 15, ]
## Quelle est la forme de cette (nouvelle) distribution
hist(com_sel$PART_ACT_IND)
boxplot(com_sel$PART_ACT_IND, horizontal = TRUE)
summary(com_sel$PART_ACT_IND)
# Creation d'un vecteur contenant les limites de classes en
# utilisant la méthode des quantiles
bks <- mf_get_breaks(com_sel$PART_ACT_IND, nbreaks = 5,
breaks = "quantile")
hist(com_sel$PART_ACT_IND, bks)
mf_export(com, "img/s_ind.png", theme = th,
width = 800)
# Cartographie
mf_map(x = com,
var = "PART_ACT_IND",
type = "choro",
breaks = bks, # Utilisation des bornes de classes créées précédement
leg_val_rnd = 0, # arrondir les valeurs dans la légende
pal = "Red-Yellow", # Utilisation d'une palette de couleur
leg_title = "Part des actifs\ntravaillant dans\nl'industrie",
add = TRUE,
col_na = "grey",
leg_no_data = "Communes de moins de 15 actifs") # texte du no data dans la légende
mf_title("Répartition des actifs travaillant dans l'industrie - 2017")
mf_scale(5)
mf_arrow(pos = "topright")
mf_credits(paste0("Admin Express COG Carto 3.0, IGN - 2021 & ",
"BD CARTO® 4.0, IGN - 2021 ; Recensements harmonisés - ",
"Séries départementales et communales, INSEE - 2020\n",
"Auteurs : T. Giraud & H. Pecout, 2022"))
dev.off()
```

![](img/s_ind.png)

Nous allons maintenant combiner le nombre total d'actifs et la parts des travailleurs de l'industrie.
```{r exoc, echo=TRUE, eval = TRUE}
mf_export(com, "img/c_ind.png", theme = th,
width = 800)
mf_map(x = com, border = "white", lwd = .2, add = T)
mf_map(x = dep, lwd = 1, col = NA, add = TRUE, lend = 0)
mf_map(com, c("ACT", "PART_ACT_IND"), "prop_choro",
breaks = bks,
pal = "Red-Yellow",
inches = .4,
border = "white", lwd = .7,
leg_val_rnd = c(0,1),
leg_pos = c(538000,6442000, 538000, 6424000), # ici les légendes sont positionnées manuellement
leg_title = c("Nombre d'actifs*",
"Part des actifs\ndans l'industrie (en %)"),
col_na = "grey",
leg_no_data = "Communes de moins de 15 actifs")
# Ajout d'annotations
mf_annotation(x = com[com$NOM_COM=="Biars-sur-Cère",],
txt = "Andros",
col_arrow = th$fg, halo = T, cex = 1)
mf_annotation(x = com[com$NOM_COM=="Figeac",],
txt = "Industrie\naéronautique",
col_arrow = th$fg, pos = "bottomright", halo = T, cex = 1)
mf_annotation(x = com[com$NOM_COM=="Gramat",],
txt = "La Quercynoise (?)",
col_arrow = th$fg, pos = "topleft", s = 1, halo = T,
cex = 1)
mf_title("Répartition des actifs travaillant dans l'industrie - 2017")
# ajout d'un carton ->
mf_inset_on(fig = c(.8,0.98,0.1,0.3))
mf_map(dep, lwd = .1)
mf_map(com, border = NA, add = T, col = th$fg)
box(col = th$fg, lwd = .5)
mf_inset_off()
# <- fin du carton
mf_scale(5)
mf_arrow("topright")
mf_credits(paste0("Admin Express COG Carto 3.0, IGN - 2021 & ",
"BD CARTO® 4.0, IGN - 2021 ; Recensements harmonisés - ",
"Séries départementales et communales, INSEE - 2020\n",
"Auteurs : T. Giraud & H. Pecout, 2022"))
dev.off()
```

![](img/c_ind.png)

2 changes: 1 addition & 1 deletion docs/index.html
Original file line number Diff line number Diff line change
Expand Up @@ -250,7 +250,7 @@ <h1>
<div id="header">
<h1 class="title">Cartographie avec R</h1>
<p class="author"><em>Timothée Giraud<a href="#fn1" class="footnote-ref" id="fnref1"><sup>1</sup></a> &amp; Hugues Pecout<a href="#fn2" class="footnote-ref" id="fnref2"><sup>2</sup></a></em></p>
<p class="date"><em>08 janvier 2023</em></p>
<p class="date"><em>11 janvier 2023</em></p>
</div>
<div id="préambule" class="section level1 unnumbered hasAnchor">
<h1>Préambule<a href="index.html#préambule" class="anchor-section" aria-label="Anchor link to header"></a></h1>
Expand Down
Loading

0 comments on commit 2e3f3af

Please sign in to comment.