1.102 – Le produit intérieur brut et ses composantes en volume aux prix de l’année précédente chaînés (En milliards d’euros 2014)

Data - INSEE

Info

  • Comptes de la Nation 2021. html

  • Comptes de la Nation 2020. html

  • Comptes de la Nation 2019. html

2019

Désordonné

Code
t_1102 %>%
  left_join(gdp, by = "date") %>%
  filter(date == as.Date("2019-01-01")) %>%
  select(-date) %>%
  mutate(`% du PIB Réel` = (100*value/gdp) %>% round(., digits = 2) %>% paste0(., " %"),
         value = round(value) %>% paste0(" Mds€")) %>%
  select(-gdp) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Ordre

Code
t_1102 %>%
  left_join(gdp, by = "date") %>%
  filter(date == as.Date("2019-01-01")) %>%
  select(-date) %>%
  arrange(-value) %>%
  mutate(`% du PIB Réel` = (100*value/gdp) %>% round(., digits = 2) %>% paste0(., " %"),
         value = round(value) %>% paste0(" Mds€")) %>%
  select(-gdp) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Administration publique: Dépenses collective et individuelle

Code
t_1102 %>%
  filter(line %in% c(8, 10, 9)) %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("% du PIB Réel") + xlab("") +
  geom_line(aes(x = date, y = value/gdp, color = Line, linetype = Line)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.85)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_log10(breaks = 0.01*seq(0, 100, 1),
                     labels = scales::percent_format(accuracy = 1))

GDP Components

Code
t_1102 %>%
  filter(line %in% c(8, 12, 9)) %>%
  left_join(gdp, by = "date") %>%
  ggplot(.) + theme_minimal() + ylab("Consommation (% du PIB)") + xlab("") +
  geom_line(aes(x = date, y = value/gdp, color = Line, linetype = Line)) +
  theme(legend.title = element_blank(),
        legend.position = c(0.7, 0.15)) +
  scale_x_date(breaks = seq(1950, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%y")) +
  scale_color_manual(values = viridis(4)[1:3]) +
  scale_y_log10(breaks = 0.01*seq(0, 100, 1),
                     labels = scales::percent_format(accuracy = 1))