Gross value added and income by A*10 industry breakdowns

Data - Eurostat

Info

source dataset .html .RData
eurostat nama_10_a10 2024-11-01 2024-10-08

Data on macro

source dataset .html .RData
eurostat nama_10_a10 2024-11-01 2024-10-08
eurostat nama_10_a10_e 2024-11-05 2024-11-05
eurostat nama_10_gdp 2024-11-01 2024-10-08
eurostat nama_10_lp_ulc 2024-11-01 2024-10-08
eurostat namq_10_a10 2024-11-01 2024-11-05
eurostat namq_10_a10_e 2024-11-01 2024-10-08
eurostat namq_10_gdp 2024-11-01 2024-10-08
eurostat namq_10_lp_ulc 2024-11-04 2024-11-04
eurostat namq_10_pc 2024-11-01 2024-10-08
eurostat nasa_10_nf_tr 2024-11-01 2024-10-08
eurostat nasq_10_nf_tr 2024-11-01 2024-10-09
fred gdp 2024-11-01 2024-11-01
oecd QNA 2024-06-06 2024-06-30
oecd SNA_TABLE1 2024-09-15 2024-06-30
oecd SNA_TABLE14A 2024-09-15 2024-06-30
oecd SNA_TABLE2 2024-07-01 2024-04-11
oecd SNA_TABLE6A 2024-07-01 2024-06-30
wdi NE.RSB.GNFS.ZS 2024-09-18 2024-09-18
wdi NY.GDP.MKTP.CD 2024-09-18 2024-09-26
wdi NY.GDP.MKTP.PP.CD 2024-09-18 2024-09-18
wdi NY.GDP.PCAP.CD 2024-10-15 2024-10-15
wdi NY.GDP.PCAP.KD 2024-09-18 2024-09-18
wdi NY.GDP.PCAP.PP.CD 2024-10-15 2024-10-15
wdi NY.GDP.PCAP.PP.KD 2024-09-18 2024-09-18

LAST_COMPILE

LAST_COMPILE
2024-11-05

Last

Code
nama_10_a10 %>%
  group_by(time) %>%
  summarise(Nobs = n()) %>%
  arrange(desc(time)) %>%
  head(1) %>%
  print_table_conditional()
time Nobs
2023 22702

na_item

Code
nama_10_a10 %>%
  left_join(na_item, by = "na_item") %>%
  group_by(na_item, Na_item) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
na_item Na_item Nobs
B1G Value added, gross 433860
D1 Compensation of employees 102341
D11 Wages and salaries 98990
D12 Employers' social contributions 98990

nace_r2

Code
nama_10_a10 %>%
  left_join(nace_r2, by = "nace_r2") %>%
  group_by(nace_r2, Nace_r2) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
nace_r2 Nace_r2 Nobs
TOTAL Total - all NACE activities 62028
A Agriculture, forestry and fishing 61155
B-E Industry (except construction) 61155
C Manufacturing 61155
F Construction 61155
K Financial and insurance activities 61155
O-Q Public administration, defence, education, human health and social work activities 61155
R-U Arts, entertainment and recreation; other service activities; activities of household and extra-territorial organizations and bodies 61155
G-I Wholesale and retail trade, transport, accommodation and food service activities 61032
M_N Professional, scientific and technical activities; administrative and support service activities 61032
L Real estate activities 61028
J Information and communication 60976

geo

Code
nama_10_a10 %>%
  left_join(geo, by = "geo") %>%
  group_by(geo, Geo) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
  mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
         Flag = paste0('<img src="../../bib/flags/vsmall/', Flag, '.png" alt="Flag">')) %>%
  select(Flag, everything()) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}

unit

Code
nama_10_a10 %>%
  left_join(unit, by = "unit") %>%
  group_by(unit, Unit) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  print_table_conditional()
unit Unit Nobs
CP_MEUR Current prices, million euro 60569
CP_MNAC Current prices, million units of national currency 60569
PC_GDP Percentage of gross domestic product (GDP) 60428
PC_TOT Percentage of total 60428
PC_EU27_2020_MEUR_CP Percentage of EU27 (from 2020) total (based on million euro), current prices 56626
CP_MPPS_EU27_2020 Current prices, million purchasing power standards (PPS, EU27 from 2020) 55463
PC_EU27_2020_MPPS_CP Percentage of EU27 (from 2020) total (based on million purchasing power standards), current prices 55463
CLV10_MEUR Chain linked volumes (2010), million euro 15694
CLV10_MNAC Chain linked volumes (2010), million units of national currency 15694
CLV15_MEUR Chain linked volumes (2015), million euro 15694
CLV15_MNAC Chain linked volumes (2015), million units of national currency 15694
CLV_I10 Chain linked volumes, index 2010=100 15694
CLV_I15 Chain linked volumes, index 2015=100 15694
PD10_EUR Price index (implicit deflator), 2010=100, euro 15674
PD10_NAC Price index (implicit deflator), 2010=100, national currency 15674
PD15_EUR Price index (implicit deflator), 2015=100, euro 15674
PD15_NAC Price index (implicit deflator), 2015=100, national currency 15674
PYP_MNAC Previous year prices, million units of national currency 15462
PYP_MEUR Previous year prices, million euro 15450
CLV05_MEUR Chain linked volumes (2005), million euro 15286
CLV05_MNAC Chain linked volumes (2005), million units of national currency 15286
CLV_I05 Chain linked volumes, index 2005=100 15286
PD05_EUR Price index (implicit deflator), 2005=100, euro 15266
PD05_NAC Price index (implicit deflator), 2005=100, national currency 15266
CLV_PCH_PRE Chain linked volumes, percentage change on previous period 15203
PD_PCH_PRE_NAC Price index (implicit deflator), percentage change on previous period, national currency 15182
PD_PCH_PRE_EUR Price index (implicit deflator), percentage change on previous period, euro 15170
CON_PPCH_PRE Contribution to GDP growth, percentage point change on previous period 14918

Gross Domestic Product

2019, Table

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         # B1GQ: Gross domestic product at market prices
         na_item == "B1G",
         nace_r2 == "TOTAL",
         time == "2019") %>%
  left_join(geo, by = "geo") %>%
  select(-geo) %>%
  left_join(unit, by = "unit") %>%
  select_if(~ n_distinct(.) > 1) %>%
  spread(Geo, values) %>%
  print_table_conditional()
unit Unit France Germany Italy
CLV_I05 Chain linked volumes, index 2005=100 118.651 123.997 100.902
CLV_I10 Chain linked volumes, index 2010=100 112.791 116.516 102.149
CLV_I15 Chain linked volumes, index 2015=100 106.511 107.258 104.991
CLV_PCH_PRE Chain linked volumes, percentage change on previous period 2.100 0.700 0.700
CLV05_MEUR Chain linked volumes (2005), million euro 1874285.400 2597952.400 1360524.100
CLV05_MNAC Chain linked volumes (2005), million units of national currency 1874285.400 2597952.400 1360524.100
CLV10_MEUR Chain linked volumes (2010), million euro 2021882.100 2728763.100 1480632.000
CLV10_MNAC Chain linked volumes (2010), million units of national currency 2021882.100 2728763.100 1480632.000
CLV15_MEUR Chain linked volumes (2015), million euro 2087958.100 2951672.100 1553556.200
CLV15_MNAC Chain linked volumes (2015), million units of national currency 2087958.100 2951672.100 1553556.200
CON_PPCH_PRE Contribution to GDP growth, percentage point change on previous period 1.860 0.630 0.630
CP_MEUR Current prices, million euro 2150690.000 3159273.000 1604269.800
CP_MNAC Current prices, million units of national currency 2150690.000 3159273.000 1604269.800
CP_MPPS_EU27_2020 Current prices, million purchasing power standards (PPS, EU27 from 2020) 1980961.200 2862127.000 1611560.500
PC_EU27_2020_MEUR_CP Percentage of EU27 (from 2020) total (based on million euro), current prices 17.100 25.100 12.800
PC_EU27_2020_MPPS_CP Percentage of EU27 (from 2020) total (based on million purchasing power standards), current prices 15.800 22.800 12.800
PC_GDP Percentage of gross domestic product (GDP) 88.400 89.400 88.900
PC_TOT Percentage of total 100.000 100.000 100.000
PD_PCH_PRE_EUR Price index (implicit deflator), percentage change on previous period, euro 1.200 2.300 0.700
PD_PCH_PRE_NAC Price index (implicit deflator), percentage change on previous period, national currency 1.200 2.300 0.700
PD05_EUR Price index (implicit deflator), 2005=100, euro 114.747 121.606 117.916
PD05_NAC Price index (implicit deflator), 2005=100, national currency 114.747 121.606 117.916
PD10_EUR Price index (implicit deflator), 2010=100, euro 106.371 115.777 108.350
PD10_NAC Price index (implicit deflator), 2010=100, national currency 106.371 115.777 108.350
PD15_EUR Price index (implicit deflator), 2015=100, euro 103.004 107.033 103.264
PD15_NAC Price index (implicit deflator), 2015=100, national currency 103.004 107.033 103.264
PYP_MEUR Previous year prices, million euro 2125823.000 3087923.000 1593573.000
PYP_MNAC Previous year prices, million units of national currency 2125823.000 3087923.000 1593573.000

Euros

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         # B1GQ: Gross domestic product at market prices
         na_item == "B1G",
         nace_r2 == "TOTAL",
         unit == "CLV10_MEUR") %>%
  left_join(geo, by = "geo") %>%
  year_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = values/1000) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_3flags + xlab("") + ylab("") +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(0, 3000, 100),
                labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))

Manufacturing Compensation

Table

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         # B1GQ: Gross domestic product at market prices
         na_item == "D1",
         time == "2020",
         nace_r2 == "C") %>%
  left_join(unit, by = "unit") %>%
  left_join(geo, by = "geo") %>%
  select(-geo) %>%
  select_if(~ n_distinct(.) > 1) %>%
  mutate(Geo = gsub(" ", "-", str_to_lower(Geo)),
         Geo = paste0('<img src="../../bib/flags/vsmall/', Geo, '.png" alt="Flag">')) %>%
  spread(Geo, values) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}

Nominal

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         # B1GQ: Gross domestic product at market prices
         na_item == "D1",
         nace_r2 == "C",
         unit == "CP_MEUR") %>%
  left_join(geo, by = "geo") %>%
  year_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = values/1000) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_3flags + xlab("") + ylab("") +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(0, 3000, 100),
                labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))

Manufacturing Value Added

Table

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         # B1GQ: Gross domestic product at market prices
         na_item == "B1G",
         time == "2020",
         nace_r2 == "C") %>%
  left_join(unit, by = "unit") %>%
  left_join(geo, by = "geo") %>%
  select(-geo) %>%
  select_if(~ n_distinct(.) > 1) %>%
  mutate(Geo = gsub(" ", "-", str_to_lower(Geo)),
         Geo = paste0('<img src="../../bib/flags/vsmall/', Geo, '.png" alt="Flag">')) %>%
  spread(Geo, values) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}

Real

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         # B1GQ: Gross domestic product at market prices
         na_item == "B1G",
         nace_r2 == "C",
         unit == "CLV10_MEUR") %>%
  left_join(geo, by = "geo") %>%
  year_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = values/1000) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_3flags + xlab("") + ylab("") +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(0, 3000, 100),
                labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))

Nominal

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         # B1GQ: Gross domestic product at market prices
         na_item == "B1G",
         nace_r2 == "C",
         unit == "CP_MNAC") %>%
  left_join(geo, by = "geo") %>%
  year_to_date %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = values/1000) %>%
  ggplot + geom_line(aes(x = date, y = values, color = color)) +
  scale_color_identity() + theme_minimal()  + add_3flags + xlab("") + ylab("") +
  scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 5), "-01-01")),
               labels = date_format("%Y")) +
  theme(legend.position = c(0.3, 0.85),
        legend.title = element_blank()) +
  scale_y_log10(breaks = seq(0, 3000, 100),
                labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))

Manufacturing Value Added (% of GDP)

2019 France, Germany, Italy

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         unit == "CP_MNAC",
         na_item == "B1G",
         time == "2019") %>%
  left_join(nace_r2, by = "nace_r2") %>%
  select(geo, nace_r2, Nace_r2, values) %>%
  group_by(geo) %>%
  mutate(values = round(100*values /values[nace_r2 =="TOTAL"], 1)) %>%
  spread(geo, values) %>%
  filter(nace_r2 != "TOTAL") %>%
  arrange(-FR) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

France: 2019, 1999, 1979

Code
nama_10_a10 %>%
  filter(geo %in% c("FR"),
         unit == "CP_MNAC",
         na_item == "B1G",
         time %in% c("2019",  "1999", 1979)) %>%
  left_join(nace_r2, by = "nace_r2") %>%
  select(time, nace_r2, Nace_r2, values) %>%
  group_by(time) %>%
  mutate(values = round(100*values /values[nace_r2 =="TOTAL"], 1)) %>%
  spread(time, values) %>%
  filter(nace_r2 != "TOTAL") %>%
  arrange(-`2019`) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

France, Germany, United Kingdom

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("FR", "DE", "UK"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  left_join(geo, by = "geo") %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  mutate(values = `C`/TOTAL) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot(.) + geom_line(aes(x = date, y =values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Manufacturing Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2025, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_3flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

France, Germany, Greece, Italy, Portugal, Spain

All

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("FR", "DE", "EL", "ES", "IT", "PT"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = C/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Manufacturing Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_6flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("FR", "DE", "EL", "ES", "IT", "PT"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = C/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Manufacturing Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_6flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

France, Luxembourg, Cyprus

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("FR", "ME", "LU", "CY", "MT", "EL"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = C/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Manufacturing Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_6flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

France, Italie, Allemagne, EA20

1995-

Code
load_data("eurostat/geo.RData")
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("FR", "EA20", "IT", "DE"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  mutate(Geo = ifelse(geo == "EA20", "Europe", Geo)) %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = C/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Manufacturing Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_4flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

France, Greece, EA20

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("FR", "EA20", "EL"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  mutate(Geo = ifelse(geo == "EA20", "Europe", Geo)) %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = C/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Manufacturing Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_3flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

Greece, Portugal, Spain

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("EL", "PT", "ES"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  left_join(geo, by = "geo") %>%
  select(Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  ggplot(.) + geom_line(aes(x = date, y = C/TOTAL, color = Geo)) + 
  theme_minimal() + xlab("") + ylab("Manufacturing Value added (% of GDP)") +
  scale_color_manual(values = c("#0D5EAF", "#006600", "#C60B1E")) +
  scale_x_date(breaks = seq(1960, 2025, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  geom_image(data = . %>%
               filter(date == as.Date("2016-01-01")) %>%
               mutate(date = as.Date("2016-01-01"),
                      image = paste0("../../icon/flag/", str_to_lower(Geo), ".png")),
             aes(x = date, y = C/TOTAL, image = image), asp = 1.5) +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

1995-2018

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("EA", "FR", "DE", "IT", "ES", "NL", "AT", "FI"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01"),
         date <= as.Date("2019-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo, Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  mutate(values = C/TOTAL) %>%
  group_by(date) %>%
  mutate(values = values /values[geo == "EA"]) %>%
  filter(geo != "EA") %>%
  group_by(geo) %>%
  mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "FR", color2, color)) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Valeur ajoutée manuf. par rapport à la Zone €") +
  scale_color_identity() + add_7flags +
  theme(legend.position = "none") +
  scale_x_date(breaks = seq(1995, 2025, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 200, 5)) +
  theme(legend.position = "none") +
  geom_hline(yintercept = 100, linetype = "dashed")

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("EA", "FR", "DE", "IT", "ES", "NL", "AT", "PL", "CZ"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01"),
         date <= as.Date("2019-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo, Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  mutate(values = C/TOTAL) %>%
  group_by(date) %>%
  mutate(values = values /values[geo == "EA"]) %>%
  filter(geo != "EA") %>%
  group_by(geo) %>%
  mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "FR", color2, color)) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Valeur ajoutée manuf. par rapport à la Zone €") +
  scale_color_identity() +
  add_8flags +
  theme(legend.position = "none") +
  scale_x_date(breaks = seq(1995, 2025, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_log10(breaks = seq(0, 200, 5)) +
  theme(legend.position = "none") +
  geom_hline(yintercept = 100, linetype = "dashed")

2000-2018

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("C", "TOTAL"),
         geo %in% c("EA", "FR", "DE", "IT", "ES", "NL", "AT", "FI"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("2000-01-01"),
         date <= as.Date("2019-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo, Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  mutate(values = C/TOTAL) %>%
  group_by(date) %>%
  mutate(values = values /values[geo == "EA"]) %>%
  filter(geo != "EA") %>%
  group_by(geo) %>%
  mutate(values = 100*values / values[date == as.Date("2000-01-01")]) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "FR", color2, color)) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Valeur ajoutée manuf. par rapport à la Zone €") +
  scale_color_identity() + add_7flags +
  scale_x_date(breaks = seq(1960, 2020, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 200, 5)) +
  theme(legend.position = "none") +
  geom_hline(yintercept = 100, linetype = "dashed")

Industry Value Added (% of GDP)

2019 France, Germany, Italy

Code
nama_10_a10 %>%
  filter(geo %in% c("FR", "DE", "IT"),
         unit == "CP_MNAC",
         na_item == "B1G",
         time == "2019") %>%
  left_join(nace_r2, by = "nace_r2") %>%
  select(geo, nace_r2, Nace_r2, values) %>%
  group_by(geo) %>%
  mutate(values = round(100*values /values[nace_r2 =="TOTAL"], 1)) %>%
  spread(geo, values) %>%
  filter(nace_r2 != "TOTAL") %>%
  arrange(-FR) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

France: 2019, 1999, 1979

Code
nama_10_a10 %>%
  filter(geo %in% c("FR"),
         unit == "CP_MNAC",
         na_item == "B1G",
         time %in% c("2019",  "1999", 1979)) %>%
  left_join(nace_r2, by = "nace_r2") %>%
  select(time, nace_r2, Nace_r2, values) %>%
  group_by(time) %>%
  mutate(values = round(100*values /values[nace_r2 =="TOTAL"], 1)) %>%
  spread(time, values) %>%
  filter(nace_r2 != "TOTAL") %>%
  arrange(-`2019`) %>%
  {if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}

France, Germany, United Kingdom

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("FR", "DE", "UK"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  left_join(geo, by = "geo") %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  mutate(values = `B-E`/TOTAL) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  ggplot(.) + geom_line(aes(x = date, y =values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Industry Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2025, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_3flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

France, Greece, EA20

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("FR", "EA20", "EL"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  mutate(Geo = ifelse(geo == "EA20", "Europe", Geo)) %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = `B-E`/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Industry Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_3flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

France, Greece, EA20

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("FR", "EA20", "EL", "DE", "IT"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  mutate(Geo = ifelse(geo == "EA20", "Europe", Geo)) %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = `B-E`/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Industry Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_5flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

France, Germany, Greece, Italy, Portugal, Spain

All

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("FR", "DE", "EL", "ES", "IT", "PT"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = `B-E`/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Industry Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_6flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("FR", "DE", "EL", "ES", "IT", "PT"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = `B-E`/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Industry Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_6flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

France, Luxembourg, Cyprus

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("FR", "ME", "LU", "CY", "MT", "EL"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo,  Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(values = `B-E`/TOTAL) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Industry Value added (% of GDP)") +
  scale_color_identity() +
  scale_x_date(breaks = seq(1960, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  add_6flags +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

Greece, Portugal, Spain

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("EL", "PT", "ES"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  left_join(geo, by = "geo") %>%
  select(Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  ggplot(.) + geom_line(aes(x = date, y = `B-E`/TOTAL, color = Geo)) + 
  theme_minimal() + xlab("") + ylab("Manufacturing Value added (% of GDP)") +
  scale_color_manual(values = c("#0D5EAF", "#006600", "#C60B1E")) +
  scale_x_date(breaks = seq(1960, 2025, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  geom_image(data = . %>%
               filter(date == as.Date("2016-01-01")) %>%
               mutate(date = as.Date("2016-01-01"),
                      image = paste0("../../icon/flag/", str_to_lower(Geo), ".png")),
             aes(x = date, y = `B-E`/TOTAL, image = image), asp = 1.5) +
  theme(legend.position = "none") +
  scale_y_continuous(breaks = 0.01*seq(-500, 200, 1),
                     labels = percent_format(accuracy = 1))

1995-2018

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("EA", "FR", "DE", "IT", "ES", "NL", "AT", "FI"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01"),
         date <= as.Date("2019-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo, Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  mutate(values = `B-E`/TOTAL) %>%
  group_by(date) %>%
  mutate(values = values /values[geo == "EA"]) %>%
  filter(geo != "EA") %>%
  group_by(geo) %>%
  mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "FR", color2, color)) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Valeur ajoutée manuf. par rapport à la Zone €") +
  scale_color_identity() + add_7flags +
  theme(legend.position = "none") +
  scale_x_date(breaks = seq(1995, 2025, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 200, 5)) +
  theme(legend.position = "none") +
  geom_hline(yintercept = 100, linetype = "dashed")

1995-

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("EA", "FR", "DE", "IT", "ES", "NL", "AT", "PL", "CZ"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01"),
         date <= as.Date("2019-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo, Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  mutate(values = `B-E`/TOTAL) %>%
  group_by(date) %>%
  mutate(values = values /values[geo == "EA"]) %>%
  filter(geo != "EA") %>%
  group_by(geo) %>%
  mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "FR", color2, color)) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Valeur ajoutée manuf. par rapport à la Zone €") +
  scale_color_identity() +
  add_8flags +
  theme(legend.position = "none") +
  scale_x_date(breaks = seq(1995, 2025, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_log10(breaks = seq(0, 200, 5)) +
  theme(legend.position = "none") +
  geom_hline(yintercept = 100, linetype = "dashed")

2000-2018

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 %in% c("B-E", "TOTAL"),
         geo %in% c("EA", "FR", "DE", "IT", "ES", "NL", "AT", "FI"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("2000-01-01"),
         date <= as.Date("2019-01-01")) %>%
  left_join(geo, by = "geo") %>%
  select(geo, Geo, nace_r2, date, values) %>%
  spread(nace_r2, values) %>%
  mutate(values = `B-E`/TOTAL) %>%
  group_by(date) %>%
  mutate(values = values /values[geo == "EA"]) %>%
  filter(geo != "EA") %>%
  group_by(geo) %>%
  mutate(values = 100*values / values[date == as.Date("2000-01-01")]) %>%
  left_join(colors, by = c("Geo" = "country")) %>%
  mutate(color = ifelse(geo == "FR", color2, color)) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = color)) + 
  theme_minimal() + xlab("") + ylab("Valeur ajoutée manuf. par rapport à la Zone €") +
  scale_color_identity() + add_7flags +
  scale_x_date(breaks = seq(1960, 2020, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = seq(0, 200, 5)) +
  theme(legend.position = "none") +
  geom_hline(yintercept = 100, linetype = "dashed")

Industry

1995-2018

Code
nama_10_a10 %>%
  filter(na_item == "B1G",
         nace_r2 == "B-E",
         geo %in% c("EA", "FR", "DE", "IT", "ES", "NL", "AT", "FI"),
         unit == "CP_MNAC") %>%
  year_to_date() %>%
  filter(date >= as.Date("1995-01-01"),
         date <= as.Date("2019-01-01")) %>%
  left_join(geo, by = "geo") %>%
  group_by(date) %>%
  mutate(values = values /values[geo == "EA"]) %>%
  filter(geo != "EA") %>%
  group_by(geo) %>%
  mutate(values = 100*values/values[date == as.Date("1995-01-01")]) %>%
  ggplot(.) + geom_line(aes(x = date, y = values, color = Geo)) + 
  theme_minimal() + xlab("") + ylab("Valeur ajoutée manuf. par rapport à la Zone €") +
  scale_color_manual(values = c("#ED2939", "#003580", "#002395", "#000000",
                                "#009246", "#AE1C28", "#FFC400")) +
  scale_x_date(breaks = seq(1960, 2020, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  geom_image(data = . %>%
               filter(date == as.Date("2008-01-01")) %>%
               mutate(image = paste0("../../icon/flag/", str_to_lower(Geo), ".png")),
             aes(x = date, y = values, image = image), asp = 1.5) +
  scale_y_continuous(breaks = seq(0, 200, 5)) +
  theme(legend.position = "none")