Chelem - chelem

Données - CEPII

Auteur·rice

Last data update: 01 août 2026, 21:30

Last compile: 05 sept. 2026, 01:35

Produits

Long

Code
produits |>
  select(1:4) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Court

Code
produits |>
  select(1:3) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Stades

Code
produits |>
  select(2:4) |>
  slice(95:100) %>%
  {if (is_html_output()) print_table(.) else .}
Code Libellé abrégé FR Libellé long FR
ST1 Primaires HA+HB+HC+IA+IB+IC+JA+JB+JC
ST2 Manufacturés de base BA+BB+BC+CA+CC+GA+GC+IG
ST3 Biens intermédiaires CB+DA+EA+EC+FA+FB+FC+FL+FS+GB+GD+GG+GI
ST4 Biens d'équipement FD+FE+FF+FG+FH+FI+FN+FO+FQ+FR+FU+FV+FW
ST5 Produits mixtes DE+EB+ED+GH+IH+II+KB+KC+KF+KG
ST6 Biens de consommation DB+DC+DD+EE+FJ+FK+FM+FP+FT+GE+GF+KA+KD+KE+KH+KI

Filières

Code
produits |>
  select(2:4) |>
  slice(84:94) %>%
  {if (is_html_output()) print_table(.) else .}
Code Libellé abrégé FR Libellé long FR
R01 Energétique IA+IB+IC+IG+IH+II
R02 Agroalimentaire JA+JB+JC+KA+KB+KC+KD+KE+KF+KG+KH+KI
R03 Textile DA+DB+DC+DD+DE
R04 Bois, papiers EA+EB+EC+ED+EE
R05 Chimique GA+GB+GC+GD+GE+GF+GG+GH+GI+BA+BB+BC+HC
R06 Sidérurgique HA+CA+CB
R07 Non ferreux HB+CC
R08 Mécanique FA+FB+FC+FD+FE+FF+FG+FH+FV+FW
R09 Véhicules FS+FT+FU
R10 Electrique FP+FQ+FR
R11 Electronique FI+FJ+FK+FL+FM+FN+FO

Sections

Code
produits |>
  select(2:4) |>
  slice(74:83) %>%
  {if (is_html_output()) print_table(.) else .}
Code Libellé abrégé FR Libellé long FR
B Matériaux de construction BA + BB + BC
C Sidérurgie, métallurgie CA + CB + CC
D Textiles, cuirs DA + DB + DC + DD + DE
E Bois, papiers EA+EB+EC+ED+EE
F Mécanique, électrique FA+FB+FC+FD+FE+FF+FG+FH+FI+FJ+FK+FL+FM+FN+FO+FP+FQ+FR+FS+FT+FU+FV+FW
G Chimie GA+GB+GC+GD+GE+GF+GG+GH+GI
H Minerais HA+HB+HC
I Energie IA+IB+IC+IG+IH+II
J Agriculture JA+JB+JC
K Produits alimentaires KA+KB+KC+KD+KE+KF+KG+KH+KI

Pays

Code
pays |>
  select(1:3) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

France and Germany

Long time series stretch back to 1967, in millions of current dollars.

Code
chel201726716_FRA_DEU |>
  filter(k == "TT") |>
  mutate(date = paste0(t, "-01-01") |> as.Date(),
         country = i) |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = v / 1000, linetype = country, color = country)) +
  scale_y_continuous(breaks = seq(0, 150, 10)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.15, 0.80))

Germany

Imports

Code
chelem_DEU_M |>
  year_to_date() |>
  filter(partner == "WLD",
         sector %in% c("ST6", "ST1", "ST2", "ST3", "ST4", "ST5")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = value/1000, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = seq(0, 1500, 10)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(8)[1:7]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.75))

Imports - Table

Code
imports1 <- chelem_DEU_M |>
  year_to_date() |>
  filter(partner == "WLD",
         date == as.Date("2016-01-01")) |>
  left_join(sector, by = "sector") |>
  select(sector, Sector, imports = value) |>
  arrange(-imports)

imports1 |>
  mutate(imports = round(imports/1000) |> paste0(" Mds€")) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Exports

Code
chelem_DEU_X |>
  year_to_date() |>
  filter(partner == "WLD",
         sector %in% c("ST6", "ST1", "ST2", "ST3", "ST4", "ST5")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = value/1000, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = seq(0, 1500, 10)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(8)[1:7]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.75))

Exports - Table

Code
exports1 <- chelem_DEU_X |>
  year_to_date() |>
  filter(partner == "WLD",
         date == as.Date("2016-01-01")) |>
  left_join(sector, by = "sector") |>
  select(sector, Sector, exports = value) |>
  arrange(-exports)

exports1 |>
  mutate(exports = round(exports/1000) |> paste0(" Mds€")) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Net Exports - Table

Code
exports1 |>
  left_join(imports1, by =c("sector", "Sector")) |>
  mutate(net_exports = exports -imports) |>
  arrange(-net_exports) |>
  mutate(net_exports = round(net_exports/1000) |> paste0(" Mds€")) |>
  select(-exports, -imports) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

Exports - Imports

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  mutate(NX = X-M) |>
  year_to_date() |>
  filter(partner == "WLD",
         sector %in% c("ST6", "ST1", "ST2", "ST3", "ST4", "ST5")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX/1000, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = seq(-1000, 1500, 10)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(8)[1:7]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

GDP

Code
CHELEM_2018_PIB_VA_BvD_20180702 |>
  filter(iso3c %in% c("DEU")) |>
  select(date, GDP = value) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

FT, R09, FS

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("FT", "R09", "FS")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 10, 1),
                     labels = percent_format(accuracy = 1)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.8))

Energie, Total

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("TT", "ST1", "R01")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 10, 1),
                     labels = percent_format(accuracy = 1)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.9))

FT, R09, FS - Exports

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  filter(partner == "WLD",
         sector %in% c("FT", "R09", "FS")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = X/GDP, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 50, 1),
                     labels = percent_format(accuracy = 1)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.8))

ST1, ST2, ST3, ST4, ST5, ST6

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("ST6", "ST1", "ST2", "ST3", "ST4", "ST5")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 10, 1),
                     labels = percent_format()) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(8)[1:7]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

M, ST1, ST2

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("ST2", "M", "ST1")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-1000, 1500, 1),
                     labels = percent_format()) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

Partners

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  filter(partner == c("WLD", "FRA", "USA", "CHN"),
         sector %in% c("TT")) |>
  left_join(partner, by = "partner") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = (X-M)/GDP, linetype = Partner, color = Partner)) +
  scale_y_continuous(breaks = 0.01*seq(-1000, 1500, 1),
                     labels = percent_format(accuracy = 1)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

Partners 2

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  filter(partner == c("EUR", "UE", "USA", "CHN"),
         sector %in% c("TT")) |>
  left_join(partner, by = "partner") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = (X-M)/GDP, linetype = Partner, color = Partner)) +
  scale_y_continuous(breaks = 0.01*seq(-1000, 1500, 1),
                     labels = percent_format(accuracy = 1)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) +
  scale_color_manual(values = viridis(5)[1:4]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

Table

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  filter(sector %in% c("TT"),
         date == as.Date("2017-01-01")) |>
  left_join(partner, by = "partner") |>
  mutate(`NX (% of GDP)` = round(100 * (X - M)/GDP, 1)) |>
  select(partner, Partner, `NX (% of GDP)`) |>
  arrange(-`NX (% of GDP)`) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

ST3, ST4, ST5

Code
chelem_DEU_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_DEU_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("DEU")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("ST3", "ST4", "ST5")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-1000, 1500, 0.5),
                     labels = percent_format()) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

France

Imports

Code
chelem_FRA_M |>
  year_to_date() |>
  filter(partner == "WLD",
         sector %in% c("ST6", "ST1", "ST2", "ST3", "ST4", "ST5")) |>
  left_join(produits |>
              select(2, 3) |>
              setNames(c("sector", "Sector")), by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = value/1000, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = seq(0, 1500, 10)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(8)[1:7]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.75))

Exports

Code
chelem_FRA_X |>
  year_to_date() |>
  filter(partner == "WLD",
         sector %in% c("ST6", "ST1", "ST2", "ST3", "ST4", "ST5")) |>
  left_join(produits |>
              select(2, 3) |>
              setNames(c("sector", "Sector")), by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = value/1000, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = seq(0, 1500, 10)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(8)[1:7]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.75))

Exports - Imports

Code
chelem_FRA_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_FRA_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  mutate(NX = X-M) |>
  year_to_date() |>
  filter(partner == "WLD",
         sector %in% c("ST6", "ST1", "ST2", "ST3", "ST4", "ST5")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX/1000, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = seq(-1000, 1500, 10)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(8)[1:7]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

GDP

Code
CHELEM_2018_PIB_VA_BvD_20180702 |>
  filter(iso3c %in% c("FRA")) |>
  select(date, GDP = value) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

ST1, ST2, ST3, ST4, ST5, ST6

Code
chelem_FRA_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_FRA_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("FRA")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("ST6", "ST1", "ST2", "ST3", "ST4", "ST5")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 10, 1),
                     labels = percent_format()) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(8)[1:7]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

Energie, Total

Code
chelem_FRA_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_FRA_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("FRA")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("TT", "ST1", "R01")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-10, 10, 1),
                     labels = percent_format(accuracy = 1)) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.9))

M, ST1, ST2

Code
chelem_FRA_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_FRA_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("FRA")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("ST2", "M", "ST1")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-1000, 1500, 1),
                     labels = percent_format()) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))

ST3, ST4, ST5

Code
chelem_FRA_X |>
  mutate(variable = "X") |>
  bind_rows(chelem_FRA_M |>
              mutate(variable = "M")) |>
  spread(variable, value) |>
  year_to_date() |>
  left_join(CHELEM_2018_PIB_VA_BvD_20180702 |>
              filter(iso3c %in% c("FRA")) |>
              select(date, GDP = value), by = "date") |>
  mutate(NX = (X-M)/GDP) |>
  filter(partner == "WLD",
         sector %in% c("ST3", "ST4", "ST5")) |>
  left_join(sector, by = "sector") |>
  ggplot() + theme_minimal() + xlab("") + ylab("") +
  geom_line(aes(x = date, y = NX, linetype = Sector, color = Sector)) +
  scale_y_continuous(breaks = 0.01*seq(-1000, 1500, 0.5),
                     labels = percent_format()) +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) + 
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.title = element_blank(),
        legend.position = c(0.2, 0.3))