2.203-204 - Consommation finale effective par durabilité - T_2203_2204

Données - INSEE

Structure

Consommation par degré de durabilité

Les services représentent aujourd’hui les deux tiers de la consommation effective des ménages, contre la moitié dans les années 1960 : la part des biens (surtout non durables : alimentation, énergie) recule continûment.

Code
`T_2203_2204` |>
  filter(sheet == "T_2203 en niveau", code %in% dur) |>
  group_by(year) |>
  mutate(part = value / sum(value)) |>
  ungroup() |>
  arrange(code) |>
  mutate(label = factor(label, levels = unique(label))) |>
  ggplot() + theme_minimal() + xlab("") + ylab("Part de la consommation effective") +
  geom_area(aes(x = year, y = part, fill = label)) +
  scale_x_continuous(breaks = seq(1960, 2030, 10)) +
  scale_y_continuous(labels = percent_format(accuracy = 1)) +
  scale_fill_manual(values = viridis(4)) +
  theme(legend.title = element_blank(), legend.position = "bottom") +
  guides(fill = guide_legend(nrow = 2))

En volume (base 100 en 1980)

Code
`T_2203_2204` |>
  filter(sheet == "T_2204 en niveau", code %in% dur) |>
  group_by(code) |>
  mutate(value = 100 * value / value[year == 1980]) |>
  ungroup() |>
  ggplot() + theme_minimal() + xlab("") + ylab("Volume (1980 = 100, échelle log)") +
  geom_line(aes(x = year, y = value, color = label)) +
  scale_x_continuous(breaks = seq(1960, 2030, 10)) +
  scale_y_log10(breaks = c(50, 75, 100, 150, 200, 300, 400)) +
  theme(legend.title = element_blank(), legend.position = "bottom") +
  guides(color = guide_legend(nrow = 2))

Croissance annuelle en volume

Code
`T_2203_2204` |>
  filter(sheet == "T_2204 en évolution", code %in% c(dur, "DUR_P31TOTAL"), 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))

Table (2025)

Code
`T_2203_2204` |>
  filter(sheet == "T_2203 en niveau", year == last_y) |>
  transmute(Poste = label, Code = code, `Mds €` = round(value, 1)) |>
  print_table_conditional()
Poste Code Mds €
Biens durables DUR_P311 110.0
Biens semi-durables DUR_P312 118.1
Biens non durables DUR_P313 472.6
Services DUR_P314 1401.9
Correction territoriale DUR_P315 -20.0
Consommation finale effective des ménages DUR_P31TOTAL 2082.6