| source | dataset | Title | .html | .rData |
|---|---|---|---|---|
| eurostat | lc_lci_r2_q | Labour cost index by NACE Rev. 2 activity - nominal value, quarterly data | 2026-06-03 | 2026-05-28 |
Labour cost index by NACE Rev. 2 activity - nominal value, quarterly data
Data - Eurostat
Info
Last observation: Quarterly: 2026Q1 (N = 54)
First observation: Quarterly: 1996Q1 (N = 430)
Last data update: 28 mai 2026, 14:49. Last compile: 04 jui 2026, 13:45
Structure
Info
Annual increase in labour costs at 3.3% in euro area - Fourth quarter of 2025. pdf/html
Annual increase in labour costs at 5.7% in euro area - Fourth quarter of 2022. pdf/html
Annual increase in labour costs at 2.9% in euro area - Third quarter of 2022. pdf
Annual increase in labour costs at 4.0% in euro area - Second quarter of 2022. pdf
Data on wages
Code
load_data("wages.RData")
wages %>%
arrange(-(dataset == "lc_lci_r2_q")) %>%
source_dataset_file_updates()| source | dataset | Title | .html | .rData |
|---|---|---|---|---|
| eurostat | lc_lci_r2_q | Labour cost index by NACE Rev. 2 activity - nominal value, quarterly data | 2026-06-03 | 2026-05-28 |
| eurostat | earn_mw_cur | Monthly minimum wages - bi-annual data | 2026-06-03 | 2026-04-26 |
| eurostat | ei_lmlc_q | Labour cost index, nominal value - quarterly data | 2026-06-03 | 2026-04-26 |
| eurostat | lc_lci_lev | Labour cost levels by NACE Rev. 2 activity | 2026-06-03 | 2026-04-26 |
| eurostat | nama_10_lp_ulc | Labour productivity and unit labour costs | 2026-06-04 | 2026-04-26 |
| eurostat | namq_10_lp_ulc | Labour productivity and unit labour costs | 2026-06-04 | 2026-04-26 |
| eurostat | tps00155 | Minimum wages | 2026-06-04 | 2026-04-26 |
| fred | wage | Wage | 2026-06-04 | 2026-05-29 |
| ilo | EAR_4MTH_SEX_ECO_CUR_NB_A | Mean nominal monthly earnings of employees by sex and economic activity -- Harmonized series | 2024-06-20 | 2023-06-01 |
| ilo | EAR_XEES_SEX_ECO_NB_Q | Mean nominal monthly earnings of employees by sex and economic activity -- Harmonized series | 2024-06-20 | 2023-06-01 |
| oecd | AV_AN_WAGE | Average annual wages | 2026-06-04 | 2026-06-04 |
| oecd | AWCOMP | Taxing Wages - Comparative tables | 2026-06-04 | 2023-09-09 |
| oecd | EAR_MEI | Hourly Earnings (MEI) | 2026-06-04 | 2024-04-16 |
| oecd | HH_DASH | Household Dashboard | 2026-06-04 | 2023-09-09 |
| oecd | MIN2AVE | Minimum relative to average wages of full-time workers - MIN2AVE | 2026-02-22 | 2023-09-09 |
| oecd | RMW | Real Minimum Wages - RMW | 2026-06-04 | 2024-03-12 |
| oecd | ULC_EEQ | Unit labour costs and labour productivity (employment based), Total economy | 2026-06-04 | 2024-04-15 |
Last
Code
lc_lci_r2_q %>%
group_by(time) %>%
summarise(Nobs = n()) %>%
arrange(desc(time)) %>%
head(2) %>%
print_table_conditional()| time | Nobs |
|---|---|
| 2026Q1 | 54 |
| 2025Q4 | 27330 |
Last
Europe
Code
lc_lci_r2_q %>%
filter(geo == "EA20",
unit != "I20") %>%
filter(time == max(time)) %>%
mutate(variable = paste0(s_adj, " - ", unit)) %>%
select(-unit, -s_adj) %>%
spread(variable, values) %>%
select_if(~ n_distinct(.) > 1) %>%
print_table_conditional()| S_adj | Unit | lcstruct | Lcstruct | CA - PCH_PRE | CA - PCH_SM | SCA - PCH_PRE | SCA - PCH_SM |
|---|---|---|---|---|---|---|---|
| Calendar adjusted data, not seasonally adjusted data | Percentage change compared to same period in previous year | D1_D4_MD5 | Labour cost for LCI (compensation of employees plus taxes minus subsidies) | NA | 3.3 | NA | NA |
| Calendar adjusted data, not seasonally adjusted data | Percentage change compared to same period in previous year | D11 | Wages and salaries (total) | NA | 3.4 | NA | NA |
| Calendar adjusted data, not seasonally adjusted data | Percentage change compared to same period in previous year | D12_D4_MD5 | Labour costs other than wages and salaries | NA | 2.9 | NA | NA |
| Calendar adjusted data, not seasonally adjusted data | Percentage change on previous period | D1_D4_MD5 | Labour cost for LCI (compensation of employees plus taxes minus subsidies) | -8.5 | NA | NA | NA |
| Calendar adjusted data, not seasonally adjusted data | Percentage change on previous period | D11 | Wages and salaries (total) | -8.8 | NA | NA | NA |
| Calendar adjusted data, not seasonally adjusted data | Percentage change on previous period | D12_D4_MD5 | Labour costs other than wages and salaries | -7.4 | NA | NA | NA |
| Seasonally and calendar adjusted data | Percentage change compared to same period in previous year | D1_D4_MD5 | Labour cost for LCI (compensation of employees plus taxes minus subsidies) | NA | NA | NA | 3.2 |
| Seasonally and calendar adjusted data | Percentage change compared to same period in previous year | D11 | Wages and salaries (total) | NA | NA | NA | 3.3 |
| Seasonally and calendar adjusted data | Percentage change compared to same period in previous year | D12_D4_MD5 | Labour costs other than wages and salaries | NA | NA | NA | 3.0 |
| Seasonally and calendar adjusted data | Percentage change on previous period | D1_D4_MD5 | Labour cost for LCI (compensation of employees plus taxes minus subsidies) | NA | NA | 0.8 | NA |
| Seasonally and calendar adjusted data | Percentage change on previous period | D11 | Wages and salaries (total) | NA | NA | 0.9 | NA |
| Seasonally and calendar adjusted data | Percentage change on previous period | D12_D4_MD5 | Labour costs other than wages and salaries | NA | NA | 0.4 | NA |
France
Code
lc_lci_r2_q %>%
filter(geo == "FR",
unit != "I20") %>%
filter(time == max(time)) %>%
mutate(variable = paste0(s_adj, " - ", unit)) %>%
select(-unit, -s_adj) %>%
spread(variable, values) %>%
select_if(~ n_distinct(.) > 1) %>%
print_table_conditional()Germany
Code
lc_lci_r2_q %>%
filter(geo == "DE",
unit != "I20") %>%
filter(time == max(time)) %>%
mutate(variable = paste0(s_adj, " - ", unit)) %>%
select(-unit, -s_adj) %>%
spread(variable, values) %>%
select_if(~ n_distinct(.) > 1) %>%
print_table_conditional()Indices
France
All
Nominal
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("FR")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(80, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank())
2017T2-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("FR")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-04-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(80, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank()) +
geom_text(data = . %>%
filter(date %in% max(date)),
aes(x = date, y = values, color = Lcstruct, label = round(values, 1)))
Business
All
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-N",
unit == "I20",
s_adj == "SCA",
geo %in% c("FR")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(50, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank())
1999-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-N",
unit == "I20",
s_adj == "SCA",
geo %in% c("FR")) %>%
quarter_to_date %>%
filter(date >= as.Date("1999-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(50, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank())
Public
All
Code
lc_lci_r2_q %>%
filter(nace_r2 == "O-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("FR")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(50, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank())
2017T2-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "O-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("FR")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-04-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(50, 200, 2)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank()) +
geom_text(data = . %>%
filter(date %in% max(date)),
aes(x = date, y = values, color = Lcstruct, label = round(values, 1)))
Germany
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("DE")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(60, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank())
Italy
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("IT")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(60, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank())
Spain
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("ES")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(60, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank())
Euro Area
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("EA")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Lcstruct) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(60, 200, 5)) +
theme(legend.position = c(0.45, 0.90),
legend.title = element_blank())
Netherlands
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "I20",
s_adj == "SCA",
geo %in% c("NL")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Lcstruct)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(60, 200, 5)) +
theme(legend.position = c(0.45, 0.80),
legend.title = element_blank())
Europe and Eurozone
All
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("EA19", "EU27_2020")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/100) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Geo)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
theme(legend.position = c(0.25, 0.90),
legend.title = element_blank())
2017-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("EA19", "EU27_2020")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/100) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = Geo)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
theme(legend.position = c(0.25, 0.90),
legend.title = element_blank())
2022Q1-Q2 - Tables
D11 - Wages and salaries (total)
%
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit %in% c("PCH_SM", "PCH_PRE"),
lcstruct == "D11",
time == max(time),
s_adj == "CA") %>%
select_if(~ n_distinct(.) > 1) %>%
select(-unit) %>%
spread(Unit, values) %>%
print_table_conditional()| geo | Geo | Percentage change compared to same period in previous year | Percentage change on previous period |
|---|---|---|---|
| EA20 | Euro area – 20 countries (2023-2025) | 3.4 | -8.8 |
| EA21 | Euro area – 21 countries (from 2026) | 3.6 | -8.8 |
| EU27_2020 | European Union - 27 countries (from 2020) | 3.8 | -7.6 |
Indice
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit %in% c("PCH_SM", "PCH_PRE"),
lcstruct == "D11",
time == max(time),
s_adj == "CA") %>%
select_if(~ n_distinct(.) > 1) %>%
select(-unit) %>%
spread(Unit, values) %>%
print_table_conditional()| geo | Geo | Percentage change compared to same period in previous year | Percentage change on previous period |
|---|---|---|---|
| EA20 | Euro area – 20 countries (2023-2025) | 3.4 | -8.8 |
| EA21 | Euro area – 21 countries (from 2026) | 3.6 | -8.8 |
| EU27_2020 | European Union - 27 countries (from 2020) | 3.8 | -7.6 |
D12_D4_MD5 - Labour costs other than wages and salaries
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D12_D4_MD5",
time %in% c("2022Q2","2022Q1"),
s_adj == "CA") %>%
select_if(~ n_distinct(.) > 1) %>%
spread(time, values) %>%
arrange(`2022Q2`) %>%
print_table_conditional()D1_D4_MD5 - Labour cost for LCI (compensation of employees plus taxes minus subsidies)
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D12_D4_MD5",
time %in% c("2022Q2","2022Q1"),
s_adj == "CA") %>%
select_if(~ n_distinct(.) > 1) %>%
spread(time, values) %>%
arrange(`2022Q2`) %>%
print_table_conditional()D11 - Wages and salaries
France, Germany
Indice
Tous
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-N",
unit == "I20",
s_adj == "SCA",
lcstruct == "D11",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
#filter(date >= as.Date("1998-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = c(seq(1998, 2100, 2)) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(90, 200, 5)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
1999-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-N",
unit == "I20",
s_adj == "SCA",
lcstruct == "D11",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
filter(date >= as.Date("1999-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = c(seq(1999, 2100, 5), seq(1997, 2100, 5)) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(90, 200, 5)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
1998-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-N",
unit == "I20",
s_adj == "SCA",
lcstruct == "D11",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
filter(date >= as.Date("1998-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = c(seq(1998, 2100, 2)) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(90, 200, 5)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
France, Germany, Italy, Spain, Europe
Indice
All
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-N",
unit == "I20",
s_adj == "SCA",
lcstruct == "D11",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(90, 200, 5)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2001-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-N",
unit == "I20",
s_adj == "SCA",
lcstruct == "D11",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= as.Date("2001-01-01")) %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(90, 200, 5)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2017T2-
B-N
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-N",
unit == "I20",
s_adj == "SCA",
lcstruct == "D11",
geo %in% c("FR", "DE", "ES", "IT", "EA20")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-04-01")) %>%
mutate(Geo = ifelse(geo == "EA20", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(90, 200, 5)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
B-S
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "I20",
s_adj == "SCA",
lcstruct == "D11",
geo %in% c("FR", "DE", "ES", "IT", "EA20")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-04-01")) %>%
mutate(Geo = ifelse(geo == "EA20", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(90, 200, 5)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
Change
All
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2017-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-01-01")) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2020-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= as.Date("2020-01-01")) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "6 months",
labels = date_format("%Y %b")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
3 years
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= Sys.Date() - years(3)) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "3 months",
labels = date_format("%Y %b")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2 years
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= Sys.Date() - years(2)) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "3 months",
labels = date_format("%Y %b")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
Netherlands, Portugal, Hungary, Italy
All
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("NL", "PT", "HU", "IT")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/100) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2017-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D11",
s_adj == "CA",
geo %in% c("NL", "PT", "HU", "IT")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/100) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
D12_D4_MD5 - Labour costs other than wages and salaries
France, Germany, Italy, Spain, Europe
All
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D12_D4_MD5",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2017-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D12_D4_MD5",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-01-01")) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2020-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D12_D4_MD5",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= as.Date("2020-01-01")) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "6 months",
labels = date_format("%Y %b")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
3 years
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D12_D4_MD5",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= Sys.Date() - years(3)) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "3 months",
labels = date_format("%Y %b")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2 years
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D12_D4_MD5",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= Sys.Date() - years(2)) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "3 months",
labels = date_format("%Y %b")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
D1_D4_MD5 - Labour cost for LCI
France, Germany, Italy, Spain
All
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D1_D4_MD5",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2017-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D1_D4_MD5",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-01-01")) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/100) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = seq(1960, 2100, 1) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%Y")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())
2020-
Code
lc_lci_r2_q %>%
filter(nace_r2 == "B-S",
unit == "PCH_SM",
lcstruct == "D1_D4_MD5",
s_adj == "CA",
geo %in% c("FR", "DE", "ES", "IT", "EA19")) %>%
quarter_to_date %>%
filter(date >= as.Date("2020-01-01")) %>%
mutate(values = values/100,
Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot(.) + geom_line(aes(x = date, y = values, color = color)) +
theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = "6 months",
labels = date_format("%Y %b")) +
scale_y_continuous(breaks = 0.01*seq(-20, 20, 1),
labels = percent_format(a = 1)) +
scale_color_identity() + add_flags +
theme(legend.position = c(0.75, 0.90),
legend.title = element_blank())