Skip to content
Snippets Groups Projects
Commit 1f7a361e authored by Juliette Engelaere-Lefebvre's avatar Juliette Engelaere-Lefebvre
Browse files

réintroduction des exmeple pout les plus persévérents

parent 2bb1c1d9
Branches
No related tags found
No related merge requests found
# Exemple ggplot {#exemple}
```{r}
library(gouvdown)
library(tidyverse)
library(sf)
library(gouvdown)
library(ggspatial)
library(cowplot)
library(ggplotify)
repo_livr <- "T:/geomatique/PROJETS/SIAL_DI/CARTES_BRUIT/LIVRABLES/livr_gestion/SHP/"
liste_gestionnaires <- list.dirs(repo_livr) %>%
setdiff(repo_livr)
# 4 parametres pour les couches de bruits
forces_bruit <- c("A", "C")
jours_nuits <- c("LD", "LN")
# compinaison de tous les parametres générant des cartes différentes
combinaisons <- expand_grid(type_carte = forces_bruit, periode = jours_nuits, gestionnaire = liste_gestionnaires) %>%
arrange(gestionnaire)
# Saisie des palettes : couleurs RVB définies par l'arrêté
palette_carte_A <- tribble(
~label, ~red, ~green, ~blue, ~LEGENDE, ~max,
'Inférieur à 45', 0.298039215686274, 0.784313725490196, 0, -Inf, 45,
'45-50', 0.333333333333333, 1, 0, 45, 50,
'50-55', 0.725490196078431, 1, 0.450980392156863, 50, 55,
'55-60', 1, 1, 0, 55, 60,
'60-65', 1, 0.666666666666667, 0, 60, 65,
'65-70', 1, 0, 0, 65, 70,
'70-75', 0.835294117647059, 0, 1, 70, 75,
'>75', 0.588235294117647, 0, 0.392156862745098, 75, Inf) %>%
mutate(hex = rgb(red, green, blue), label = fct_inorder(label))
pal_A <- palette_carte_A$hex %>% setNames(palette_carte_A$label)
palette_carte_C <- tribble(
~label, ~LEGENDE, ~red, ~green, ~blue,
'LD', 68, 1, 0.415686274509804, 0,
'LD', 73, 1, 0.415686274509804, 0,
'LD', 71, 1, 0.415686274509804, 0,
'LD', 55, 1, 0.415686274509804, 0,
'LN', 62, 1, 0, 0.862745098039216,
'LN', 65, 1, 0, 0.862745098039216,
'LN', 60, 1, 0, 0.862745098039216,
'LN', 50, 1, 0, 0.862745098039216
) %>%
mutate(hex = rgb(red, green, blue))
pal_C <- palette_carte_C$hex %>% setNames(palette_carte_C$label)
# une fonction pour identifier les couches à visualiser
trouve_cartes_periode <- function(type_carte = "A", periode = "LD", gestionnaire = liste_gestionnaires[2]) {
list.files(path = gestionnaire, pattern = paste0(".*_", type_carte, "_", periode, "_S_.*\\.shp"),
full.names = TRUE, recursive = TRUE)
}
logo <- gglogo(logo = "prefecture_r52", width = unit(25, "mm")) %>%
as.ggplot() +
theme(aspect.ratio = 2/2.5)
type_carte = "A"
periode = "LD"
gestionnaire = liste_gestionnaires[1]
if(type_carte == "A") {
pal_bruit <- pal_A
pal_df <- palette_carte_A
legende_pal = "legend"
} else {
pal_bruit <- pal_C
pal_df <- palette_carte_C
legende_pal = "none"
}
gest <- gsub(repo_livr, "", gestionnaire) %>% gsub("/", "", ., fixed = TRUE) %>% str_to_sentence
jour_nuit <- ifelse(periode == "LD", "jour", "nuit")
titre <- paste0("Carte de bruit - ", gest)
sous_titre <- paste0("Période : ", jour_nuit, ", type : ", type_carte)
fich <- paste0("viz_", type_carte, "_", periode, "_", gest, ".pdf")
carte <- trouve_cartes_periode(type_carte = type_carte, periode = periode, gestionnaire = gestionnaire) %>%
st_read() %>%
mutate(LEGENDE = as.numeric(LEGENDE)) %>%
left_join(pal_df, by = c("LEGENDE"))
# if(nrow(carte) == 0) {
# message(fich, " zappé")
# return(NULL)
# } else {
titres <- ggplot() +
labs(title = titre, subtitle = sous_titre) +
theme_gouv_map(plot_title_size = 14, subtitle_size = 12) +
theme(plot.title = element_text(hjust = 0.5, vjust = 0), plot.subtitle = element_text(hjust = 0.5, vjust = 0),
aspect.ratio = 0.000000000000000001, plot.margin = unit(c(4,0,0,0), "mm"))
entete <- plot_grid(logo, titres, nrow = 1, ncol = 2, rel_widths = c(1, 8)) +
theme(plot.background = element_rect(color = "grey") ) #, plot.margin = unit(c(4,4,0,4), "mm")
viz <- ggplot(carte) +
annotation_map_tile(type = "cartolight", zoomin = 0) +
geom_sf(aes(fill = label)) +
scale_fill_manual(values = pal_bruit, breaks = pal_df$label, name = "niveau de bruit (dB)", guide = legende_pal) +
annotation_scale() +
theme_gouv_map(base_size = 10, caption_size = 8) +
theme(plot.margin = unit(c(4,0,4,0), "mm"), plot.caption.position = "plot") +
labs(caption = "mention des sources à définir")
assemblage <- plot_grid(entete, viz, ncol = 1, rel_heights = c(1, 8)) +
theme(plot.background = element_rect(color = "grey"))
assemblage2 <- plot_grid(assemblage, viz, ncol = 1, nrow = 1) +
theme(plot.margin = unit(c(4,4,4,4), "mm"))
ggsave(assemblage2, filename = fich, path = gestionnaire, device = "pdf", width = 29.7, height = 21, units = "cm")
message(gestionnaire, "/", fich, " exporté")
viz
# }
```
```{r}
entete
```
Les cartes de bruits du premier gestionnaire :
```{r, echo=FALSE}
assemblage
```
# Exemple sql {#exemple_sql}
```{r, echo=TRUE}
library(tidyverse)
library(datalibaba)
library(knitr)
con_production <- datalibaba::connect_to_db(db = "production", user = "admin")
```
```{sql, connection=con_production, output.var = "donnees_lue", echo=TRUE}
SELECT nature, count(*)
FROM scte_cartographie_ff.n_bdt_troncon_de_route_l_2011_044
GROUP BY nature
ORDER BY nature;
```
Il y a `r nrow(donnees_lue)` lignes dans le résultat de la requete
```{r echo=TRUE}
kable(donnees_lue)
```
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment