Skip to content

Commit

Permalink
M7 maj 2024 (#43)
Browse files Browse the repository at this point in the history
- Ajouts de précisions dans la consigne de l'exercice 2 du M7
- Nettoyage de la consigne de l'exercice 1 du M7
- Amélioration de la documentation des fonctions de savoirfR
- installation de la police Marianne conditionne à son absence pour l'exercice 5 du M7
  • Loading branch information
jengelaere authored Nov 27, 2024
1 parent 75efbd9 commit 6cf7812
Show file tree
Hide file tree
Showing 13 changed files with 48 additions and 40 deletions.
3 changes: 2 additions & 1 deletion R/extract_r_files.R
Original file line number Diff line number Diff line change
@@ -1,4 +1,5 @@
#' Liste les rmd dans le dossiers inst/vignettes du module et les place dans les dossiers t Extrait les enonces et les corrections des rmd et les place dans les dossiers
#' Liste les exercices d'un module au format rmd, presents dans le dossiers inst/vignettes du module, puis en extrait/nettoie/colle le contenu dans des scripts R d'enonces et de corrections, rendus accessibles aux stagiaires utilisant le package savoirFr pour réaliser les exercices, au niveau du dossier inst/rstudio/templates/project/ressources du module. N'impacte que le package savoirfR.
#'
#'
#' @param module le numero du dossier
#'
Expand Down
9 changes: 7 additions & 2 deletions R/rmd_to.R
Original file line number Diff line number Diff line change
Expand Up @@ -29,6 +29,10 @@ vignettes_path <- function(...) {
#'
#' @import knitr
#' @importFrom fs path_ext_set
#' @examples
#' \dontrun{
#' rmd_to(module = "m7", rmdfile = "exo2.rmd")
#' }
#'
rmd_to <- function(module, rmdfile, folder = "corrections", purl = TRUE) {
old_purl_opts <- knitr::opts_chunk$get('purl')
Expand Down Expand Up @@ -76,7 +80,8 @@ rmd_to_enonce <- function(module, rmdfile) {

#' Clean R correction file
#'
#' @param rfile character
#' @param rfile character l'adresse du fichier a nettoyer par exemple :
#' "inst/rstudio/templates/project/ressources/m7/corrections/exo2.R"
#'
#' @importFrom dplyr as_tibble filter mutate pull
#' @importFrom magrittr %>%
Expand All @@ -89,7 +94,7 @@ clean_r <- function(rfile) {
res %>%
dplyr::as_tibble() %>%
#remove empty lines and chunk opts and lines 'resultats attendus : '
dplyr::filter(!stringr::str_detect(.data$value, "(#' $)|(^##)|sultat attendu|sultats attendu")) %>%
dplyr::filter(!stringr::str_detect(.data$value, "(#' $)|(^##)|sultat attendu|sultats attendu|^#' ```")) %>%
#replace #' by #, and replace load with system file by basic load
dplyr::mutate(value = stringr::str_replace(.data$value, "#'", '#')) %>%
dplyr::mutate(value = gsub('system.file("extdata", "', '"extdata/', .data$value, fixed = TRUE)) %>%
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,6 @@
# # polygone (a - orange)
# a_poly <- st_polygon(list(rbind(c(-1, -1), c(1, -1), c(1, 1), c(-1, -1))))
# a <- st_sfc(a_poly)
# # lignes (l - bleues)
# l1 <- st_multilinestring(list(rbind(c(0.5, -1), c(-0.5, 1))))
# l2 <- st_multilinestring(list(rbind(c(.9, -.9), c(.5, 0))))
# l <- st_sfc(l1, l2)
# # multi-points (p - noirs)
# p_matrix <- matrix(c(0.5, 1, -1, 0, 0, 1, 0.5, 1), ncol = 2)
# p_multi <- st_multipoint(x = p_matrix)
Expand All @@ -22,10 +18,6 @@ library(tidyverse)
# polygone (a - orange)
a_poly <- st_polygon(list(rbind(c(-1, -1), c(1, -1), c(1, 1), c(-1, -1))))
a <- st_sfc(a_poly)
# lignes (l - bleues)
l1 <- st_multilinestring(list(rbind(c(0.5, -1), c(-0.5, 1))))
l2 <- st_multilinestring(list(rbind(c(.9, -.9), c(.5, 0))))
l <- st_sfc(l1, l2)
# multi-points (p - noirs)
p_matrix <- matrix(c(0.5, 1, -1, 0, 0, 1, 0.5, 1), ncol = 2)
p_multi <- st_multipoint(x = p_matrix)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# ---
# title: "Exercice 2 - module 7"
# ---
# Le but de cet exercice va être d'exploiter les données *DVF* sur les transactions immobilières dans l'ancien et la carte des quartiers de Nantes pour obtenir des indicateurs des transactions par quartier.
# Le but de cet exercice va être d'exploiter les données *DVF* sur les transactions immobilières dans l'ancien et la carte des quartiers de Nantes pour obtenir des indicateurs des transactions de logements par quartier.
# On va utiliser pour DVF l'API mise en place par Christian Quest : http://api.cquest.org/dvf.
# ```r
# ## Activation des packages
Expand Down Expand Up @@ -31,7 +31,7 @@ load("extdata/dvf.RData")

load("extdata/quartier_nantes.RData")

# On veut produire les infos suivantes par quartier et année :
# On veut produire les infos suivantes par quartier et année pour les ventes de logements (maisons et d'appartements) :
# - Volume de ventes (nb)
# - Pourcentage de maisons dans les ventes
# - Prix moyen au m2 par type de bien
Expand Down
15 changes: 14 additions & 1 deletion inst/rstudio/templates/project/ressources/m7/corrections/exo5.R
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,19 @@
# - au survol du rond d'un EPCI, afficher son nom, le nb de ventes 2017.
library(ggiraph)
library(mapfactory)

# On vérifie que la police Marianne est correctement installée.
verif_marianne_ok <- gouvdown::check_fonts_in_r(fonts = "Marianne")
if(verif_marianne_ok) {
systemfonts::register_font(name = "Marianne light",
system.file("resources/fonts/marianne/truetype/Marianne-Light.ttf",
package = "gouvdown.fonts"))
systemfonts::register_font(name = "Marianne",
system.file("resources/fonts/marianne/truetype/Marianne-Regular.ttf",
package = "gouvdown.fonts"))
}


p_web <- prix_m2_maisons_epci_sf %>%
mutate(
sign_evol = if_else(evo_prix_m2 >=0, "+", ""),
Expand All @@ -25,5 +38,5 @@ p_web <- prix_m2_maisons_epci_sf %>%
subtitle = "Entre 2014 et 2017",
caption = "source : DVF"
)
ggiraph(ggobj = p_web)
girafe(ggobj = p_web)

4 changes: 0 additions & 4 deletions inst/rstudio/templates/project/ressources/m7/enonces/exo1.R
Original file line number Diff line number Diff line change
Expand Up @@ -8,10 +8,6 @@
# # polygone (a - orange)
# a_poly <- st_polygon(list(rbind(c(-1, -1), c(1, -1), c(1, 1), c(-1, -1))))
# a <- st_sfc(a_poly)
# # lignes (l - bleues)
# l1 <- st_multilinestring(list(rbind(c(0.5, -1), c(-0.5, 1))))
# l2 <- st_multilinestring(list(rbind(c(.9, -.9), c(.5, 0))))
# l <- st_sfc(l1, l2)
# # multi-points (p - noirs)
# p_matrix <- matrix(c(0.5, 1, -1, 0, 0, 1, 0.5, 1), ncol = 2)
# p_multi <- st_multipoint(x = p_matrix)
Expand Down
4 changes: 2 additions & 2 deletions inst/rstudio/templates/project/ressources/m7/enonces/exo2.R
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
# ---
# title: "Exercice 2 - module 7"
# ---
# Le but de cet exercice va être d'exploiter les données *DVF* sur les transactions immobilières dans l'ancien et la carte des quartiers de Nantes pour obtenir des indicateurs des transactions par quartier.
# Le but de cet exercice va être d'exploiter les données *DVF* sur les transactions immobilières dans l'ancien et la carte des quartiers de Nantes pour obtenir des indicateurs des transactions de logements par quartier.
# On va utiliser pour DVF l'API mise en place par Christian Quest : http://api.cquest.org/dvf.
# ```r
# ## Activation des packages
Expand All @@ -25,7 +25,7 @@
# ```


# On veut produire les infos suivantes par quartier et année :
# On veut produire les infos suivantes par quartier et année pour les ventes de logements (maisons et d'appartements) :
# - Volume de ventes (nb)
# - Pourcentage de maisons dans les ventes
# - Prix moyen au m2 par type de bien
Expand Down
8 changes: 0 additions & 8 deletions inst/vignettes/m7/exo1.rmd
Original file line number Diff line number Diff line change
Expand Up @@ -10,10 +10,6 @@ library(tidyverse)
# polygone (a - orange)
a_poly <- st_polygon(list(rbind(c(-1, -1), c(1, -1), c(1, 1), c(-1, -1))))
a <- st_sfc(a_poly)
# lignes (l - bleues)
l1 <- st_multilinestring(list(rbind(c(0.5, -1), c(-0.5, 1))))
l2 <- st_multilinestring(list(rbind(c(.9, -.9), c(.5, 0))))
l <- st_sfc(l1, l2)
# multi-points (p - noirs)
p_matrix <- matrix(c(0.5, 1, -1, 0, 0, 1, 0.5, 1), ncol = 2)
p_multi <- st_multipoint(x = p_matrix)
Expand All @@ -26,10 +22,6 @@ library(tidyverse)
# polygone (a - orange)
a_poly <- st_polygon(list(rbind(c(-1, -1), c(1, -1), c(1, 1), c(-1, -1))))
a <- st_sfc(a_poly)
# lignes (l - bleues)
l1 <- st_multilinestring(list(rbind(c(0.5, -1), c(-0.5, 1))))
l2 <- st_multilinestring(list(rbind(c(.9, -.9), c(.5, 0))))
l <- st_sfc(l1, l2)
# multi-points (p - noirs)
p_matrix <- matrix(c(0.5, 1, -1, 0, 0, 1, 0.5, 1), ncol = 2)
p_multi <- st_multipoint(x = p_matrix)
Expand Down
4 changes: 2 additions & 2 deletions inst/vignettes/m7/exo2.rmd
Original file line number Diff line number Diff line change
Expand Up @@ -2,7 +2,7 @@
title: "Exercice 2 - module 7"
---

Le but de cet exercice va être d'exploiter les données *DVF* sur les transactions immobilières dans l'ancien et la carte des quartiers de Nantes pour obtenir des indicateurs des transactions par quartier.
Le but de cet exercice va être d'exploiter les données *DVF* sur les transactions immobilières dans l'ancien et la carte des quartiers de Nantes pour obtenir des indicateurs des transactions de logements par quartier.
On va utiliser pour DVF l'API mise en place par Christian Quest : http://api.cquest.org/dvf.

```r
Expand Down Expand Up @@ -58,7 +58,7 @@ quartier_nantes <- st_set_crs(quartier_nantes, 4326)
load(system.file("extdata", "quartier_nantes.RData", package = "savoirfR"))
```

On veut produire les infos suivantes par quartier et année :
On veut produire les infos suivantes par quartier et année pour les ventes de logements (maisons et d'appartements) :

- Volume de ventes (nb)
- Pourcentage de maisons dans les ventes
Expand Down
16 changes: 9 additions & 7 deletions inst/vignettes/m7/exo5.rmd
Original file line number Diff line number Diff line change
Expand Up @@ -12,13 +12,15 @@ library(ggiraph)
library(mapfactory)
# On vérifie que la police Marianne est correctement installée.
gouvdown::check_fonts_in_r(fonts = "Marianne")
systemfonts::register_font(name = "Marianne light",
system.file("resources/fonts/marianne/truetype/Marianne-Light.ttf",
package = "gouvdown.fonts"))
systemfonts::register_font(name = "Marianne",
system.file("resources/fonts/marianne/truetype/Marianne-Regular.ttf",
package = "gouvdown.fonts"))
verif_marianne_ok <- gouvdown::check_fonts_in_r(fonts = "Marianne")
if(!verif_marianne_ok) {
systemfonts::register_font(name = "Marianne light",
system.file("resources/fonts/marianne/truetype/Marianne-Light.ttf",
package = "gouvdown.fonts"))
systemfonts::register_font(name = "Marianne",
system.file("resources/fonts/marianne/truetype/Marianne-Regular.ttf",
package = "gouvdown.fonts"))
}
p_web <- prix_m2_maisons_epci_sf %>%
mutate(
Expand Down
3 changes: 2 additions & 1 deletion man/clean_r.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

4 changes: 2 additions & 2 deletions man/extract_r_files.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

6 changes: 6 additions & 0 deletions man/rmd_to.Rd

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

0 comments on commit 6cf7812

Please sign in to comment.