---
title: "Production électrique de source hydraulique"
subtitle: "Quantité d'électricité produite annuellement par les centrales hydroélectriques et les installations de turbinage de l'eau, Vaud"
lang: fr
# subtitle: "Sous-titre de l'indicateur à insérer ici"
author: "DGE-DIREN"
date: last-modified # Renvoie automatiquement la date de dernière modification du .qmd
params: # ! `open_params_metadata_help()` pour des instructions de remplissage détaillées
fonction: 3 # Valeur numérique : 0=Non-défini/1=Description/2=Orientation/3=Pilotage
nature: 2 # Valeur numérique : 0=Non-défini/1=Actions/2=Effets/3=Impacts
idThematique: 08.02.05.31 # Identifiant selon nomenclature obsind theme/sous-theme/objet/id (p.ex. 08.03.01)
niveauPublication: 2 # Valeur numérique : 0=Non-défini/1=Interne/2=Public. Tout autre choix génère un avertissement
niveauDetail: Installation # Texte libre qui indique le niveau minimal d'agrégation disponible pour l'indicateur (canton, commune, région, installation, véhicule, etc.)
frequenceMAJ: Annuel # Texte libre, idéalement à choisir parmi les codes suivants : mensuel/semestriel/annuel/biannuel/mensuel/tous les x ans/non-défini
moisMAJ: 7 # Valeur numérique : 0=Non-défini/1=Janvier/2=Février, etc.
disponibleDepuis: 2015 # Valeur numérique Année (aaaa) (p.ex. 2000)
personneReference: Steve Ducommun # Prénom+Nom de la personne référente de l'indicateur
mailReference: stat.energie@vd.ch # E-mail ACV (générique ou nominal, se terminant par @vd.ch)
uuid: de3c0e96-1ef2-44a4-b6ac-144cc5b5cdc2 # !NE PAS MODIFIER! Identifiant unique généré automatiquement à la création de la fiche
uuidParent: null # Identifiant(s) unique(s) des indicateurs parents de l'indicateur actuel (format uuid avec séparateur '/' si plusieurs uuid)
uuidEnfant: null # Identifiant(s) unique(s) des indicateurs enfants de l'indicateur actuel (format uuid avec séparateur '/' si plusieurs uuid)
uuidConnexe: null # Identifiant(s) unique(s) des indicateurs connexes à l'indicateur actuel (format uuid avec séparateur '/' si plusieurs uuid)
majCatalogue: 1 # Valeur numérique : 0=Non/1=Oui pour mettre à jour les métadonnées dans le catalogue des indicateurs (connexion au disque partagé ObsInd requise)
format:
html:
other-links: # Copier la structure ci-dessous pour remplacer/ajouter d'autres liens sous la table des matières
- text: Infos statistiques énergie
href: 'https://www.vd.ch/environnement/energie/chiffres-cles-et-statistiques-energie-vaud/'
target: '_blank'
- text: Profil climatique communes
href: 'https://stat-climat-vd.ch/profil-climat/'
target: '_blank'
- text: Direction de l'énergie
href: 'https://www.vd.ch/djes/dge/dge-diren'
target: '_blank'
metadata-files: # Ne pas supprimer !
- assets/format-options.yml
editor_options:
chunk_output_type: console
---
<!-- Les métadonnées ci-dessus doivent être remplies pour chaque fiche. Lorsqu'un champ n'est disponible, il est possible d'écrire "" ou NULL -->
<!-- Aide au remplissage : `obsindVD::open_aide_remplissage_help()` (lancer la ligne de code dans la console) -->
```{r setup}
#| echo: false
#| warning: false
#| message: false
#| results: asis
# version: 1.2.2 (01.09.2026)
# -----------------------------------------------------------------------------
# Ne rien modifier dans ce bloc de code !
# Ce bloc doit être lancé pour charger les métadonnées dans l'environnement !
# -----------------------------------------------------------------------------
# update_model_setup_code() pour mettre à jour ce bloc avec la version du dernier modèle
# Chargement (ou installation) des librairies disponibles sur CRAN
if (!require("pacman")) install.packages("pacman")
pacman::p_load(tidyverse, readxl, glue, gt, DT, ggiraph, scales, ggtext)
# Chargement de la librairie obsindVD privée
# Pour l'installation : suivre les instructions dans le BitBucket : https://dsigit.etat-de-vaud.ch/outils/git/projects/DGE/repos/obsind/
# Si l'accès n'est pas autorisé, faire une demande à l'Observatoire des indicateurs
library(obsindVD)
# Par défaut : ouvrir l'aide obsindVD (supprimer cette ligne si superflu)
open_fiche_quarto_help()
# Vérifie, ajoute et insère des valeurs par défaut pour les métadonnées manquantes (en-tête YAML)
complete_metadata_params()
# Extraction + validation des métadonnées (en-tête YAML)
selected_metadata <- return_selected_metadata()
# Ajout de l'identifiant dans les en-têtes du document html
display_identifiant(value = selected_metadata[['Identifiant thématique']])
```
::: {.callout-tip .narrow icon="false" collapse="true"}
# Métadonnées de l'indicateur
```{r}
# --------------------------------------
# Présentation des métadonnées ----
# --------------------------------------
tidyr::tibble(
`Attribut` = names(selected_metadata),
`Valeur` = selected_metadata
) |>
gt_table_ind()
```
:::
```{r}
# Préciser quelle est l'année maximale recherchée (permet d'automatiser la recherche du bon dossier et fichier pour les données PRONOVO)
an_max <- 2025
```
```{r}
# ---------------------------------------------------------
# Tableau de synthèse ----
# ---------------------------------------------------------
# Pour de l'aide sur comment remplir ce tableau de synthèse lancer la commande suivante dans la console :
# obsindVD::open_tableau_synthese_help()
# Pour afficher l'aide spécifique à une fonction, ajouter '?' avant l'appel de la fonction :
# ?icon_up()
tableau_synthese <- list(
# Premier indicateur... attention à la structure !
list(
titre_indicateur = "Production électrique de source hydraulique, Vaud <b>[GWh]</b>",
valeur_2025 = 909,
obj_2030 = 1180, # valeur numérique OU icônes de flèches
obj_2040 = NA,
obj_2050 = 1230,
tendance_observée = icon_flat(type = "trend", text = paste0("2019-", an_max)) , # icon_up(type = "trend", text = paste0("2019-", an_max)), # icon_up(), icon_flat(), icon_down()
tendance_évaluée = icon_meh() # icon_meh() # icon_happy(), icon_meh(), icon_sad()
)
)
# Impression du tableau de synthèse
print_tableau_synthese(tableau_synthese) # Le résultat peut être customisé comme un objet {gt}
```
# Description {#sec-description}
Cet indicateur informe sur la quantité totale d'électricité produite annuellement à partir de source hydraulique. Il traduit l’évolution de la production locale d’électricité issue de la force hydraulique.
# Cadre de référence {#sec-cadre-reference}
Les objectifs de la production d'électricité hydraulique sont définis dans la Conception cantonale de l’énergie ([CoCEn 2019](https://www.vd.ch/fileadmin/user_upload/themes/environnement/energie/fichiers_pdf/CoCEn_Pub_complete_20190816.pdf)). L’objectif est d’atteindre une production de 1180 GWh<sub>él</sub> en 2030 et de 1230 GWh<sub>él</sub> en 2050.
# Graphique {#sec-graphique}
```{r}
# ---------------------------------------------------------
# Préparation des données à partir des données brutes
# ---------------------------------------------------------
# 1 - Données de production électrique (lecture des données traitées (en kWh) sous meta_pronovo_résumé_2015-2022_2023-05-17.xlsx onglet qui se trouve sous: P:\DIREN\02 PILOTAGE DIREN\02.11 Bases de donnees\PRONOVO\04_extractions_traitees))
tryCatch(
expr = {
# Chemin du dossier
dossier <- glue("P:/DIREN/02 PILOTAGE DIREN/02.11 Bases de donnees/PRONOVO/04_extractions_traitees/Resultats_{an_max}")
# Lister tous les fichiers qui commencent par "meta_pronovo_résumé_2015-" et contiennent an_max (défini plus tôt)
fichiers <- list.files(
path = dossier,
pattern = glue("^meta_pronovo_résumé_2015-{an_max}.*\\.xlsx$"),
full.names = TRUE
)
# Extraire la date finale du nom de fichier et garder le plus récent
fichier_sel <- fichiers |>
tibble::enframe(name = NULL, value = "fichier") |>
mutate(
# extraire la date sous forme YYYY-MM-DD
date_fin = str_extract(fichier, "\\d{4}-\\d{2}-\\d{2}"),
date_fin = as.Date(date_fin)
) |>
arrange(desc(date_fin)) |> # trier par date décroissante
slice(1) |> # garder le premier (plus récent)
pull(fichier) # extraire le chemin complet
pronovo_detaille <- read_xlsx(fichier_sel,
sheet = "Détaillé")|>
janitor::clean_names(case="screaming_snake")
production_temp <- pronovo_detaille |>
# rename_with(~ stringr::str_extract(.x, "\\d{4}"), tidyselect::starts_with("X")) |>
# Sélectionner uniquement la ressource
filter(CATEGORIE_DIREN == "Hydroélectricité") |>
# Convertir ANNEE en numérique pour pouvoir trier ou filtrer
mutate(ANNEE = as.integer(ANNEE),
PRODUCTION_GWH = PRODUCTION/1e6) |>
select(ANNEE,PRODUCTION_GWH)
# en faire un pivot long
production_hydro <- production_temp |>
rename(VALEUR = PRODUCTION_GWH)
# pivot_longer(
# cols = -c(ANNEE, CATEGORIE_DIREN),
# names_to = "VARIABLE",
# values_to = "VALEUR" ) |>
# select(-CATEGORIE_DIREN)
# Export du file dans dossier data
write_delim(production_hydro,"./data/production_hydro.csv", delim = ";")
},
error = function(e) stop(paste("Download failed: Il faut vérifier que le doc soit toujours ok", e$message)),
warning = function(w) stop(paste("Download failed: Il faut vérifier que le doc soit toujours ok", w$message))
)
production_hydro <- read_delim("./data/production_hydro.csv", delim = ";")
# ---------------------------------------------------------
# 2 - Population
# Variables sont : ANNEE et HABITANTS
tryCatch(
expr = {
read_delim("P:/DIREN/02 PILOTAGE DIREN/02.11 Bases de donnees/POPULATION/04_extractions_traitees/population.csv", delim=";") |>
write_delim("./data/population.csv", delim = ";")
},
error = function(e) message("Attention: la table population n'a pas pu être réactualisée avec les données brutes du P:/ ", e$message)
)
population <- read_delim("./data/population.csv", delim = ";") |>
filter(ANNEE >= 2015 & ANNEE <= an_max)
# ---------------------------------------------------------
# 3 - Objectifs CoCEn
# A créer une fois
# objectifs <- tibble(
# ANNEE = c(2030, 2050),
# VALEUR = c(1180, 1230)
# )
# write_delim(objectifs,"./data/objectifs.csv", delim = ";")
objectifs <- read_delim("./data/objectifs.csv", delim = ";")
```
```{r }
#| label: fig-G1
##| fig-cap: "Production électrique de source hydraulique, Vaud"
#| fig.width: 8
#| fig.asp: 0.6
#_______________________________________________________
# G1 - Production électrique de source hydraulique, Vaud
#_______________________________________________________
# Prod_hab (obtenir la production par habitant)
production_temp <- production_hydro |>
mutate(ANNEE = as.integer(as.numeric(ANNEE)))
prod_hab <- production_temp |>
left_join(population, by = "ANNEE") |>
mutate(KWH_HAB = (VALEUR*1e6) / HABITANTS) |>
select(ANNEE, KWH_HAB) |>
rename(VALEUR = KWH_HAB) |>
mutate(VARIABLE = "Production par habitant [kWh / hab]")
# Ajouter un trou pour séparer les consommations des objectifs
last_year <- max(production_temp$ANNEE, na.rm = TRUE)
gap1 <- last_year + 1 # entre dernière année et 2030
gap2 <- 2030 + 1 # entre 2030 et 2050
annees_hist <- sort(unique(production_temp$ANNEE))
annees_levels <- c(
annees_hist,
gap1,
2030,
gap2,
2050
)
# Ajout les trous à chaque dataset
add_missing_years <- function(df) {
tibble(ANNEE = annees_levels) |>
left_join(df, by = "ANNEE")
}
# production_temp <- add_missing_years(production_temp)
# # production_temp <- production_temp |>
# # filter(!is.na(VALEUR))
# prod_hab <- add_missing_years(prod_hab )
obj_graf <- add_missing_years(objectifs) |>
filter(!is.na(VALEUR))
production_temp <- add_missing_years(production_temp |>
mutate(ANNEE = as.numeric(ANNEE)))
prod_hab <- add_missing_years(prod_hab |>
mutate(ANNEE = as.numeric(ANNEE)))
# Transformer ANNEE en facteur avec ordre
production_temp <- production_temp |>
mutate(ANNEE = factor(ANNEE, levels = annees_levels))
# |>
# mutate(VARIABLE = factor(VARIABLE, levels = c("INJECTION_GWH", "AUTOCONSOMMATION_GWH")))
prod_hab <- prod_hab |>
mutate(ANNEE = factor(ANNEE, levels = annees_levels))
obj_graf <- obj_graf |>
mutate(ANNEE = factor(ANNEE, levels = annees_levels)) |>
mutate(VARIABLE = "Objectifs CoCEn 2019")
# Coefficient
coef <- 0.5 * max(objectifs$VALEUR, na.rm = TRUE) /
max(prod_hab$VALEUR, na.rm = TRUE)
# production_temp <- production_temp |>
# tidyr::complete(
# ANNEE,
# # VARIABLE = c("INJECTION_GWH", "AUTOCONSOMMATION_GWH"),
# fill = list(VALEUR = 0)
# )
production_temp <- production_temp |>
tidyr::complete(
# ANNEE = factor(annees_levels, levels = annees_levels),
ANNEE, fill = list(VALEUR = 0)) |>
# fill = list(VALEUR = 0, VARIABLE = "Total")
filter(ANNEE %in% annees_levels) |>
mutate(VARIABLE = "Total")
prod_hab <- prod_hab |>
tidyr::complete(ANNEE) |>
filter(ANNEE %in% annees_levels)
# production_temp <- production_temp |>
# mutate(VARIABLE = "Total")
g1_plot <- ggplot() +
# Bars (objectives )
geom_col_interactive(
data = obj_graf,
aes(x = ANNEE, y = VALEUR, fill = VARIABLE,
tooltip = paste(VARIABLE |> str_remove("\\[.*\\]"), " ", ANNEE, ":", label_number(accuracy = 1, big.mark = "'")(VALEUR), "GWh"),
data_id = ANNEE),
width = 0.7,
position = position_nudge(x = -0.05),
color = NA
) +
# Barres empilées (autoconsommation et réseau)
geom_col_interactive(
data = production_temp,
aes(x = ANNEE, y = VALEUR, fill = VARIABLE, #était Serie
color = VARIABLE,
tooltip = paste(VARIABLE |> str_remove("\\[.*\\]"), " ", ANNEE, ":", label_number(accuracy = 1, big.mark = "'")(VALEUR), "GWh"),
data_id = ANNEE),
width = 0.7,
position = "stack",
color = NA
) +
# Line (per capita) – use factor + group = 1
geom_line(
data = prod_hab,
aes(x = ANNEE, y = VALEUR * coef, color = VARIABLE, group = 1),
linewidth = 1.2,
) +
geom_point_interactive(
data = prod_hab,
aes(
x = ANNEE,
y = VALEUR * coef,
color = VARIABLE,
tooltip = paste(VARIABLE |> str_remove("\\[.*\\]"), " ", ANNEE, " : ", label_number(accuracy = 1, big.mark = "'")(VALEUR), "kWh/hab"),
data_id = ANNEE
),
size = 1.5
)+
scale_fill_manual(
values = c(
"Total" = "#f0d47a",
"Objectifs CoCEn 2019" = "grey80"
),
breaks = c("Total", "Objectifs CoCEn 2019"),
labels = c(
"Total" = "Production électrique totale [GWh]",
"Objectifs CoCEn 2019" = "Objectifs CoCEn 2019"
),
name = NULL,
na.translate = FALSE # afin d'éviter que NA apparaisse dans la légende
) +
guides(
fill = guide_legend(nrow = 1, byrow = TRUE),
color = guide_legend(nrow = 1, byrow = FALSE)
)+
scale_color_manual(
values = c(
"Total" = "#f0d47a",
"Objectifs CoCEn 2019" = "grey80",
"Production par habitant [kWh / hab]" = "#E6550D"
),
name = NULL,
na.translate = FALSE # afin d'éviter les NA dans la légende
)+
# Y axis with secondary axis
scale_y_continuous(
name = "Production d'électricité (GWh)",
labels = scales::label_number(big.mark = "'", decimal.mark = "."),
sec.axis = sec_axis(~ . / coef,
name = "Production par habitant [kWh / hab]",
labels = scales::label_number(big.mark = "'", decimal.mark = "."))
) +
scale_x_discrete(
drop = FALSE,
labels = function(x) {
num_x <- as.numeric(as.character(x))
ifelse(
num_x %in% c(gap1, gap2),
"", # cacher uniquement les gaps
as.character(num_x) # afficher toutes les autres années
)
}
)+
# Titles and caption
labs(
title = str_wrap("**Production électrique de source hydraulique : total et par habitant, Vaud**", width = 73) |>
stringr::str_replace_all("\n", "<br>") ,
x = NULL,
caption = "Source: Pronovo / DGE-DIREN<br>Etat au 11.06.2025" # <br> pour aller à la ligne
) +
theme_minimal(base_size = 13) +
theme(
plot.title = element_markdown(face = "bold", size = 12),
plot.subtitle = element_markdown(size = 10),
plot.caption = element_markdown(hjust = 0, size = 9, margin = margin(t = 5), face = "italic"), # !! MWR: rajout italic
plot.caption.position = "plot",
plot.margin = margin(10, 10, 30, 10),
legend.position = "bottom", # "top" "left" "right" "none"
legend.box = "vertical", #"horizontal"
legend.box.just = "left", # aligne les blocs à gauche
legend.justification = "left",
legend.text = element_text(size = 10),
legend.title = element_text(size = 12),
legend.spacing.y = unit(0.1, "cm"), # espace entre blocs
legend.margin = margin(t = 0, b = 0), # supprime marge globale
legend.box.spacing = unit(0.1, "cm"), # espace bloc-légende vs reste du plot
axis.text = element_text(size = 8),
axis.title = element_text(size = 10)
)
obsindVD::girafe_light(g1_plot,
# Ajout de la transparence aux éléments non-survolés !
options = list(
opts_hover_inv(css = "opacity:0.5;"),
opts_hover(css = "opacity:1;"),
# Ajout du nom du PNG téléchargé + remplacement de 'download' par 'télécharger' (survol icône)
opts_toolbar(
position = "topright",
hidden = c("zoom", "selection"),
pngname = paste0(selected_metadata[['Identifiant thématique']], "_G1"),
tooltips = list(
saveaspng = "Télécharger"
)
)
)
)
ggsave(glue("./images/g1_Production_electricite_hydraulique_2015-{an_max}.png"), width = 8, height = 6, dpi = 300)
```
# Analyse {#sec-analyse}
## Description statistique {#sec-analyse-description}
L’augmentation de la production hydroélectrique entre 2015 et 2018 est notamment due à la mise en fonction de l’usine des Farettes en 2016, ainsi que celle de la nouvelle centrale des Forces Motrices Hongrin-Léman (FMHL) en 2017. Etant donné que le potentiel de production hydraulique est presque totalement exploité dans le canton, aucune hausse significative n’est attendue. Les baisses observées en 2017, en 2022 et en 2025 sont principalement dues aux conditions hydrologiques moins favorables ces années-là que les autres années.
L'objectif est d'atteindre une production hydroélectrique de 1180 GWh<sub>él</sub> à moyen terme (2030) et de 1230 GWh<sub>él</sub> à long terme (2050).
## Interprétation {#sec-analyse-interpretation}
L’évolution de la production hydroélectrique n’est pas évaluée : il faudra observer les productions des prochaines années pour pouvoir évaluer si les objectifs à moyen et long terme pourront être atteints.
## Périmètre et limites {#sec-analyse-perimetre}
Production d’électricité par turbinage de l’eau, par le biais de centrales à accumulation, y compris pompage-turbinage, de centrales au fil de l’eau ou dans les réseaux d’eau urbain. Les installations localisées sur le canton font foi, l’origine de l’eau turbinée n’est pas considérée.
# Tableaux {#sec-tableaux}
<!-- Aide au remplissage : consulter la section correspondante avec `obsindVD::open_aide_remplissage_help()` -->
```{r}
#| label: tbl-tableau1
##| tbl-cap: Intitulé du tableau 1
# Changer nom de variable chez prod_hab
prod_hab_wide <- prod_hab |>
filter(!is.na(VALEUR)) |>
rename(KWH_HAB = VALEUR) |>
mutate(ANNEE = as.integer(as.character(ANNEE)))
prod_tot_wide <- production_hydro |>
rename(TOT_GWH = VALEUR) |>
mutate(ANNEE = as.integer(as.character(ANNEE))) |>
filter(ANNEE <= an_max) |>
select(ANNEE, TOT_GWH)
obj_wide <- objectifs |>
rename(TOT_GWH = VALEUR)
df <- prod_tot_wide |>
bind_rows(obj_wide |> mutate(ANNEE = as.integer(ANNEE))) |>
filter(!is.na(TOT_GWH)) |>
# left_join(prod_solaire_wide, by = "ANNEE") |>
left_join(prod_hab_wide, by = "ANNEE") |>
select(ANNEE, TOT_GWH, KWH_HAB)
t1 <- df |>
mutate(across(everything(), \(col) na_if(col, y = 0))) |> # !! MWR: on change les 0 en NA comme ça sub_missing() ci-après transforme les 0 et les NA en "-" (par exemple)
gt() |>
tab_header(title = md("**Production électrique de source hydraulique: total et par habitant, Vaud**")) |>
fmt_number(columns = -ANNEE, sep_mark = "'", decimals = 0) |>
cols_label(
ANNEE = "Année",
TOT_GWH = "Total",
KWH_HAB = "Par habitant"
) |>
cols_width(everything() ~ pct(100 / ncol(df))) |>
tab_style(style = cell_text(weight = "bold"),
locations = list(cells_body(columns = c("ANNEE", "TOT_GWH", "KWH_HAB")),
cells_column_labels(columns = c("ANNEE", "TOT_GWH", "KWH_HAB")))) |>
tab_style(
style = cell_text(align = "center"),
locations = cells_column_labels()
) |>
tab_style(
style = cell_text(align = "left"),
locations = cells_column_labels(columns = ANNEE)
) |>
tab_style(
style = cell_text(align = "left"),
locations = list(cells_footnotes(), cells_source_notes())
) |>
cols_align(align = "center", columns = -ANNEE) |>
cols_align(align = "left", columns = ANNEE) |>
cols_label_with(
columns = -c(ANNEE, KWH_HAB),
fn = \(col) md(paste0(col, "\n\n[GWh]"))
) |>
cols_label_with(
columns = KWH_HAB,
fn = \(col) md(paste0(col, "\n\n[kWh / hab]"))
) |>
tab_style(style = cell_borders(sides = "all"),
locations = list(cells_column_labels(), cells_column_spanners())) |>
tab_style(style = cell_borders(sides = c("left", "right")),
locations = list(cells_body())) |>
tab_options(column_labels.border.bottom.color = "black") |>
fmt_missing(columns = everything(), missing_text = "-") |>
tab_footnote(footnote = "Objectifs de la Conception cantonale de l'énergie (CoCEn 2019).",
locations = cells_body(columns = ANNEE, rows = ANNEE > year(Sys.Date())),
placement = "right") |>
tab_footnote(footnote = "Electricité injectée dans le réseau et autoconsommée.",
locations = cells_title(groups = "title"),
placement = "right") |>
tab_style(
style = cell_borders(sides = "top", style = "dashed", color = "lightgrey", weight = px(1)),
locations = cells_body(rows = ANNEE == min(objectifs$ANNEE)) # applies to first row
) |>
opt_table_outline(style = "solid", width = px(2), color = "lightgrey") |>
tab_source_note(
source_note = md("*Sources : Pronovo / DGE-DIREN<br>Etat au 11.06.2025*")
)
t1
gtsave(t1, glue("./images/t1_Production_electricite_hydraulique_2015-{an_max}.html"))
```
# Méthode {#sec-methode}
Les quantités d’électricité produites selon les différentes sources et injectées dans le réseau électrique sont recueillies et transmises par Pronovo (Organisme de certification accrédité pour l’enregistrement des garanties d’origine et la mise en œuvre des programmes fédéraux d’encouragement des énergies renouvelables).
# Comparaison {#sec-comparaison}
La situation étant très différente entre les cantons, une comparaison entre les cantons ne semble ici pas pertinente.
# Références {#sec-ref}
## Fiches associées {#sec-ref-fiches}
**Fiches Méthode** :
* MET_8.02.02.02 : Méthode pour le calcul de la production d'électricité (*disponible sur demande*)
**Fiches Indicateur** :
* [IND_08.02.02.01 : Production électrique de sources renouvelables et non renouvelables, Vaud](https://stat-climat-vd.ch/fiches-indicateurs/themes/energie/IND_08.02.02.01_Production_Electrique_Total.html)
## Autres références {#sec-ref-autres}
* [DGE-DIREN - Conception cantonale de l’énergie (CoCEn 2019)](https://www.vd.ch/fileadmin/user_upload/themes/environnement/energie/fichiers_pdf/CoCEn_Pub_complete_20190816.pdf)
# Glossaire {#sec-glossaire}
```{r}
# ---------------------------------------------------------
# Bloc pour lecture du file BRUT où se trouvent toutes les définition pour le glossaire et création du data.frame "definition" ----
# ---------------------------------------------------------
tryCatch(
expr = {readxl::read_excel("P:/DIREN/11 POLITIQUE ENERG/11.08 Indicateurs et stat/1 Indicateurs DIREN/3-Fiches IND MET OBJ/Liste Definitions.xlsx",
skip = 2) |>
janitor::clean_names(case="screaming_snake") |>
select(TERME, DEFINITION) |>
readr::write_csv2("./data/definitions.csv")
},
error = function(e) message("Attention: la table définition n'a pas pu être réactualisée avec les données brutes du P:/ ", e$message),
warning = function(w) message("Attention: la table définition n'a pas pu être réactualisée avec les données brutes du P:/ ", w$message)
)
```
```{r}
# ---------------------------------------------------------
# Bloc pour sélectionner les définitions à apparaître dans le glossaire ----
# ---------------------------------------------------------
# Lecture du file
def_tot <- readr::read_delim(file = "./data/definitions.csv",
delim = ";",
show_col_types = FALSE) |>
# Mettre les premières lettres de chaque définition en majuscule
dplyr::mutate(DEFINITION = stringr::str_replace(DEFINITION,"^\\p{L}",stringr::str_to_upper))
# Sélection des définitions
definitions <- def_tot |>
filter(TERME %in% c(
"Gigawattheure (GWh)"
))
# Ajouter Agents énergétiques
# Print de la table avec modification des columns
definitions |>
gt_table_ind() |>
gt::cols_label(TERME = "", DEFINITION ="Définition") |>
gt::tab_options(table.align = "left")
```
# Annexes {#sec-annexes .unnumbered}
<!-- Aide au remplissage : consulter la section correspondante avec `obsindVD::open_aide_remplissage_help()` -->