Effectifs, âge et part des femmes dans les trois versants de la fonction publique - FT1.2-SL_Effectifs_ensemble_FP

Données - DGAFP

Figure 1.2-2 : effectifs par versant

Code
fig2 |>
  filter(employeur %in% c("Fonction publique de l'État (FPE)", "Fonction publique territoriale (FPT)",
                           "Fonction publique hospitalière (FPH)")) |>
  ggplot(aes(x = annee, y = valeur / 1e6, color = employeur)) +
  geom_line(linewidth = 1) +
  scale_color_brewer(palette = "Set1", name = NULL) +
  theme_minimal(base_size = 10) +
  labs(x = NULL, y = "Millions d'agents",
       title = "Effectifs physiques par versant de la fonction publique",
       subtitle = "au 31 décembre, 1996-2019") +
  theme(legend.position = "bottom", panel.grid.minor = element_blank())

Figure 1.2-7 : effectifs par statut

Code
fig7 |>
  filter(statut %in% c("Fonctionnaires", "Contractuels", "Militaires"),
         versant %in% c("FPE, y compris EPA", "FPT, y compris EPA", "FPH")) |>
  ggplot(aes(x = annee, y = valeur / 1000, fill = statut)) +
  geom_col() +
  facet_wrap(~ versant, scales = "free_y") +
  scale_fill_brewer(palette = "Set2", name = NULL) +
  theme_minimal(base_size = 9) +
  labs(x = NULL, y = "Milliers d'agents",
       title = "Effectifs par statut et par versant",
       subtitle = "au 31 décembre, 2002-2019") +
  theme(legend.position = "bottom", panel.grid.minor = element_blank())

Code
fig7 |>
  filter(statut == "Part de non-titulaires (en %)",
         versant %in% c("FPE, y compris EPA", "FPT, y compris EPA", "FPH")) |>
  mutate(versant = recode(versant, "FPE, y compris EPA" = "FPE", "FPT, y compris EPA" = "FPT")) |>
  ggplot(aes(x = annee, y = valeur / 100, color = versant)) +
  geom_line(linewidth = 1) +
  scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
  scale_color_brewer(palette = "Set1", name = NULL) +
  theme_minimal(base_size = 11) +
  labs(x = NULL, y = NULL,
       title = "Part des non-titulaires par versant",
       subtitle = "2002-2019") +
  theme(legend.position = "bottom", panel.grid.minor = element_blank())

Part des femmes par employeur

Code
fig_employeur |>
  filter(mesure == "Part des femmes (%)",
         employeur %in% c("Total FPE", "Total FPT", "Total FPH", "Ensemble")) |>
  ggplot(aes(x = annee, y = valeur / 100, color = employeur)) +
  geom_line(linewidth = 1) +
  scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
  scale_color_brewer(palette = "Set1", name = NULL) +
  theme_minimal(base_size = 11) +
  labs(x = NULL, y = NULL,
       title = "Part des femmes par versant",
       subtitle = "2004-2019") +
  theme(legend.position = "bottom", panel.grid.minor = element_blank())

Âge moyen et structure par âge, par statut

Code
fig_statut |>
  filter(mesure == "Âge moyen (années)", statut %in% c("Fonctionnaires", "Contractuels"),
         versant %in% c("FPE", "FPT", "FPH")) |>
  ggplot(aes(x = annee, y = valeur, color = statut)) +
  geom_line(linewidth = 1) +
  facet_wrap(~ versant) +
  scale_color_manual(values = c("Fonctionnaires" = "#1B3F8B", "Contractuels" = "#E8737A"), name = NULL) +
  theme_minimal(base_size = 10) +
  labs(x = NULL, y = "Âge moyen (années)",
       title = "Âge moyen par statut et par versant",
       subtitle = "2004-2019") +
  theme(legend.position = "bottom", panel.grid.minor = element_blank())

Code
fig_statut |>
  filter(mesure %in% c("Part des moins de 30 ans (%)", "Part des 50 ans ou plus (%)"),
         statut == "Total", versant %in% c("FPE", "FPT", "FPH")) |>
  ggplot(aes(x = annee, y = valeur / 100, color = mesure)) +
  geom_line(linewidth = 1) +
  facet_wrap(~ versant) +
  scale_y_continuous(labels = scales::percent_format(accuracy = 1)) +
  scale_color_manual(values = c("Part des moins de 30 ans (%)" = "#E8737A",
                                 "Part des 50 ans ou plus (%)" = "#1B3F8B"), name = NULL) +
  theme_minimal(base_size = 9) +
  labs(x = NULL, y = NULL,
       title = "Structure par âge, par versant",
       subtitle = "2004-2019") +
  theme(legend.position = "bottom", panel.grid.minor = element_blank())