1.101-103 - Le produit intérieur brut et ses composantes - T_1101_1103

Données - INSEE

Structure

Le PIB par la demande

Poids des grands postes dans le PIB (prix courants)

La consommation finale représente les trois quarts du PIB, l’investissement (FBCF) environ un quart. Le commerce extérieur bascule d’un excédent (années 1990-2000) à un déficit persistant depuis 2005 : les importations dépassent les exportations.

Code
`T_1101_1103` |>
  filter(sheet == "T_1101 en niveau",
         code %in% c("P3", "P51G", "P6", "P7", "P52")) |>
  left_join(pib_c, by = "year") |>
  ggplot() + theme_minimal() + xlab("") + ylab("% du PIB") +
  geom_line(aes(x = year, y = value / pib, color = label)) +
  scale_x_continuous(breaks = seq(1950, 2030, 10)) +
  scale_y_continuous(breaks = seq(0, 0.8, 0.1), labels = percent_format(accuracy = 1)) +
  theme(legend.title = element_blank(), legend.position = "bottom") +
  guides(color = guide_legend(nrow = 2))

Solde extérieur (exportations − importations, % du PIB)

Code
`T_1101_1103` |>
  filter(sheet == "T_1101 en niveau", code %in% c("P6", "P7")) |>
  select(year, code, value) |>
  spread(code, value) |>
  left_join(pib_c, by = "year") |>
  ggplot() + theme_minimal() + xlab("") + ylab("Solde extérieur (% du PIB)") +
  geom_hline(yintercept = 0, color = "grey60") +
  geom_line(aes(x = year, y = (P6 - P7) / pib)) +
  scale_x_continuous(breaks = seq(1950, 2030, 10)) +
  scale_y_continuous(breaks = 0.01 * -10:10, labels = percent_format(accuracy = 1))

Croissance en volume

Croissance annuelle du PIB

Code
`T_1101_1103` |>
  filter(sheet == "T_1102 en évolution", code == "B1GQ") |>
  ggplot() + theme_minimal() + xlab("") + ylab("Croissance du PIB en volume") +
  geom_hline(yintercept = 0, color = "grey60") +
  geom_col(aes(x = year, y = value / 100), fill = "#2b6cb0") +
  scale_x_continuous(breaks = seq(1950, 2030, 10)) +
  scale_y_continuous(breaks = 0.02 * -4:4, labels = percent_format(accuracy = 1))

Croissance des grands postes de demande

Code
`T_1101_1103` |>
  filter(sheet == "T_1102 en évolution",
         code %in% c("B1GQ", "P3", "P51G", "P6", "P7")) |>
  filter(year >= 1990) |>
  ggplot() + theme_minimal() + xlab("") + ylab("Croissance annuelle en volume") +
  geom_hline(yintercept = 0, color = "grey60") +
  geom_line(aes(x = year, y = value / 100, color = label)) +
  scale_x_continuous(breaks = seq(1990, 2030, 5)) +
  scale_y_continuous(labels = percent_format(accuracy = 1)) +
  theme(legend.title = element_blank(), legend.position = "bottom") +
  guides(color = guide_legend(nrow = 2))

Prix

Déflateurs des grands postes (base 100 en 2000)

Le prix de l’investissement a augmenté moins vite que celui de la consommation jusqu’aux années 2000, puis plus vite. Le prix des importations décroche à la baisse dans les années 1990-2010 (mondialisation, baisse du prix des biens manufacturés), avant de remonter avec les chocs énergétiques.

Code
`T_1101_1103` |>
  filter(sheet == "T_1103 en niveau",
         code %in% c("B1GQ", "P3", "P51G", "P6", "P7")) |>
  group_by(code) |>
  mutate(value = 100 * value / value[year == 2000]) |>
  ungroup() |>
  ggplot() + theme_minimal() + xlab("") + ylab("Indice de prix (2000 = 100, échelle log)") +
  geom_line(aes(x = year, y = value, color = label)) +
  scale_x_continuous(breaks = seq(1950, 2030, 10)) +
  scale_y_log10(breaks = c(10, 20, 30, 50, 75, 100, 150)) +
  theme(legend.title = element_blank(), legend.position = "bottom") +
  guides(color = guide_legend(nrow = 2))

Consommation finale par secteur

Ménages, administrations publiques et ISBLSM. La part des administrations publiques dans le PIB progresse tendanciellement (santé, éducation), celle des ménages recule légèrement.

Code
`T_1101_1103` |>
  filter(sheet == "T_1101 en niveau", line %in% c(5, 6, 9)) |>
  left_join(pib_c, by = "year") |>
  ggplot() + theme_minimal() + xlab("") + ylab("Consommation finale (% du PIB)") +
  geom_line(aes(x = year, y = value / pib, color = label)) +
  scale_x_continuous(breaks = seq(1950, 2030, 10)) +
  scale_y_continuous(breaks = 0.05 * 0:12, labels = percent_format(accuracy = 1)) +
  theme(legend.title = element_blank(), legend.position = "bottom") +
  guides(color = guide_legend(nrow = 2))

Équilibre emplois-ressources (2025)

Code
`T_1101_1103` |>
  filter(sheet == "T_1101 en niveau", year == last_y, line <= 18) |>
  transmute(Poste = label, Code = code,
            `Mds €` = round(value, 1),
            `% du PIB` = round(100 * value / value[code == "B1GQ"][1], 1)) |>
  print_table_conditional()
Poste Code Mds € % du PIB
Produit intérieur brut B1GQ 2991.1 100.0
Importations de biens et services P7 1023.8 34.2
Total des emplois finaux TFU 4014.8 134.2
Dépense de consommation finale P3 2335.0 78.1
Ménages hors entrepreneurs individuels S14B 1545.9 51.7
Administrations publiques S13 719.6 24.1
dont Dépense de consommation individuelle P31 467.1 15.6
dont Dépense de consommation collective P32 252.5 8.4
Institutions sans but lucratif au services des ménages S15 69.5 2.3
Formation brute de capital fixe P51G 663.6 22.2
Sociétés et entreprises individuelles non financières S11X14AA 364.8 12.2
Sociétés et entreprises individuelles financières S12X14AF 26.9 0.9
Administrations publiques S13 132.2 4.4
Ménages hors entrepreneurs individuels S14B 133.1 4.5
Institutions sans but lucratif au services des ménages S15 6.6 0.2
Acquisitions moins cessions d’objets de valeur P53 1.3 0.0
Variation des stocks P52 5.5 0.2
Exportations de biens et services P6 1009.4 33.7