Gross value added and income by A*10 industry breakdowns
Data - Eurostat
Info
Last observation: Annual: 2025 (N = 24,586)
First observation: Annual: 1975 (N = 994)
Last data update: 16 avr 2026, 01:06. Last compile: 16 avr 2026, 02:23
Structure
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") %>%
select(-geo) %>%
select_if(~ n_distinct(.) > 1) %>%
spread(Geo, values) %>%
print_table_conditional()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") %>%
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") %>%
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") %>%
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") %>%
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") %>%
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") %>%
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") %>%
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)) %>%
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() %>%
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")) %>%
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")) %>%
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")) %>%
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")) %>%
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")) %>%
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() %>%
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")) %>%
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")) %>%
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")) %>%
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") %>%
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)) %>%
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() %>%
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")) %>%
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")) %>%
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")) %>%
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")) %>%
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")) %>%
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() %>%
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")) %>%
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")) %>%
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")) %>%
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")) %>%
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")