source | dataset | Title | Download | Compile |
---|---|---|---|---|
eurostat | nama_10_lp_ulc | Labour productivity and unit labour costs | 2024-10-08 | [2024-11-22] |
eurostat | earn_mw_cur | Monthly minimum wages - bi-annual data | 2024-10-08 | [2024-11-23] |
eurostat | ei_lmlc_q | Labour cost index, nominal value - quarterly data | 2024-10-08 | [2024-11-23] |
eurostat | lc_lci_lev | Labour cost levels by NACE Rev. 2 activity | 2024-10-08 | [2024-11-23] |
eurostat | lc_lci_r2_q | Labour cost index by NACE Rev. 2 activity - nominal value, quarterly data | 2024-11-04 | [2024-11-23] |
eurostat | namq_10_lp_ulc | Labour productivity and unit labour costs | 2024-11-04 | [2024-11-22] |
eurostat | tps00155 | Minimum wages | 2024-10-08 | [2024-11-22] |
fred | wage | Wage | 2024-11-21 | [2024-11-21] |
ilo | EAR_4MTH_SEX_ECO_CUR_NB_A | Mean nominal monthly earnings of employees by sex and economic activity -- Harmonized series | 2023-06-01 | [2024-06-20] |
ilo | EAR_XEES_SEX_ECO_NB_Q | Mean nominal monthly earnings of employees by sex and economic activity -- Harmonized series | 2023-06-01 | [2024-06-20] |
oecd | AV_AN_WAGE | Average annual wages | 2024-11-22 | [2024-11-22] |
oecd | AWCOMP | Taxing Wages - Comparative tables | 2023-09-09 | [2024-09-15] |
oecd | EAR_MEI | Hourly Earnings (MEI) | 2024-04-16 | [2024-04-16] |
oecd | HH_DASH | Household Dashboard | 2023-09-09 | [2024-09-15] |
oecd | MIN2AVE | Minimum relative to average wages of full-time workers - MIN2AVE | 2023-09-09 | [2024-09-15] |
oecd | RMW | Real Minimum Wages - RMW | 2024-03-12 | [2024-09-15] |
oecd | ULC_EEQ | Unit labour costs and labour productivity (employment based), Total economy | 2024-04-15 | [2024-09-15] |
Labour productivity and unit labour costs
Data - Eurostat
Info
Data on wages
LAST_COMPILE
LAST_COMPILE |
---|
2024-11-23 |
Last
Code
%>%
nama_10_lp_ulc group_by(time) %>%
summarise(Nobs = n()) %>%
arrange(desc(time)) %>%
head(1) %>%
print_table_conditional()
time | Nobs |
---|---|
2023 | 1669 |
na_item
Code
%>%
nama_10_lp_ulc left_join(na_item, by = "na_item") %>%
group_by(na_item, Na_item) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) print_table(.) else .} {
na_item | Na_item | Nobs |
---|---|---|
RLPR_PER | Real labour productivity per person | 6436 |
NULC_PER | Nominal unit labour cost based on persons | 6377 |
NULC_HW | Nominal unit labour cost based on hours worked | 6345 |
RLPR_HW | Real labour productivity per hour worked | 6284 |
D1_SAL_PER | Compensation per employee | 5586 |
D1_SAL_HW | Compensation of employees per hour worked | 5561 |
EMP_HAB | Total employment (employed persons) per capita | 4722 |
HW_EMP | Hours worked per employed person | 4600 |
HW_HAB | Hours worked per capita | 4588 |
NLPR_PER | Nominal labour productivity per person | 1047 |
NLPR_HW | Nominal labour productivity per hour worked | 1023 |
unit
Code
%>%
nama_10_lp_ulc left_join(unit, by = "unit") %>%
group_by(unit, Unit) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F) else .} {
geo
Code
%>%
nama_10_lp_ulc 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 .} {
na_item: Glance
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE"),
== "2019") %>%
time %>%
year_to_date left_join(na_item, by = "na_item") %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
select(na_item, Na_item, values, unit, Geo) %>%
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 .} {
France
Compare per person
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
%in% c("RLPR_PER", "D1_SAL_PER", "NULC_PER"),
na_item %in% c("EUR", "I15")) %>%
unit %>%
year_to_date left_join(na_item, by = "na_item") %>%
group_by(na_item) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
+ theme_minimal() + xlab("") + ylab("Per person") +
ggplot geom_line(aes(x = date, y = values, color = Na_item)) +
#scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.26, 0.9),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(100, 1000, 100))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
%in% c("RLPR_PER", "D1_SAL_PER", "NULC_PER"),
na_item %in% c("EUR", "I15")) %>%
unit %>%
year_to_date left_join(na_item, by = "na_item") %>%
group_by(na_item) %>%
arrange(date) %>%
filter(date >= as.Date("1995-01-01")) %>%
mutate(values = 100*values/values[1]) %>%
+ theme_minimal() + xlab("") + ylab("Per Person") +
ggplot geom_line(aes(x = date, y = values, color = Na_item)) +
#scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.26, 0.9),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(100, 1000, 10))
D1_SAL_HW - Values
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
== "D1_SAL_HW",
na_item %in% c("EUR", "NAC", "PPS_EU27_2020")) %>%
unit %>%
year_to_date left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
#scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.26, 0.9),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
== "D1_SAL_HW",
na_item %in% c("EUR", "NAC", "PPS_EU27_2020")) %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
D1_SAL_PER - Index
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
== "D1_SAL_PER") %>%
na_item %>%
year_to_date left_join(unit, by = "unit") %>%
group_by(Unit) %>%
arrange(date) %>%
mutate(values = 100*values / values[1]) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
theme(legend.position = c(0.45, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(seq(0, 2000, 100), seq(100, 200, 10)),
labels = scales::dollar_format(a= 1, su = "", p = ""))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
== "D1_SAL_PER") %>%
na_item %>%
year_to_date group_by(date) %>%
filter(n() == 5) %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
group_by(Unit) %>%
mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees, Per Person (1995 = 100)") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
theme(legend.position = c(0.45, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(a= 1, su = "", p = ""))
D1_SAL_HW - Index
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date left_join(unit, by = "unit") %>%
group_by(Unit) %>%
arrange(date) %>%
mutate(values = 100*values / values[1]) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
theme(legend.position = c(0.45, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(seq(0, 2000, 100), seq(100, 200, 10)),
labels = scales::dollar_format(a= 1, su = "", p = ""))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date group_by(date) %>%
filter(n() == 5) %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
group_by(Unit) %>%
mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees, Per Person (1995 = 100)") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
theme(legend.position = c(0.45, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(a= 1, su = "", p = ""))
RLPR_PER - Real labour productivity per person
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
== "RLPR_PER",
na_item %in% c("I10", "I15")) %>%
unit %>%
year_to_date left_join(unit, by = "unit") %>%
group_by(Unit) %>%
arrange(date) %>%
mutate(values = 100*values / values[1]) %>%
+ theme_minimal() + xlab("") + ylab("Real labour productivity per person") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
theme(legend.position = c(0.25, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(seq(0, 2000, 100), seq(100, 200, 10)),
labels = scales::dollar_format(a= 1, su = "", p = ""))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR"),
== "RLPR_PER",
na_item %in% c("I10", "I15")) %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
group_by(Unit) %>%
arrange(date) %>%
mutate(values = 100*values / values[1]) %>%
+ theme_minimal() + xlab("") + ylab("Real labour productivity per person") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
theme(legend.position = c(0.25, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = c(seq(0, 2000, 100), seq(100, 200, 2)),
labels = scales::dollar_format(a= 1, su = "", p = ""))
D1_SAL_HW - Wage inflation (%)
France, Germany, Italy
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Nominal unit labour cost based on persons") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
1995-
Values
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT", "EA19"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Nominal unit labour cost based on persons") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(4) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Index = 100
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT", "EA19"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("1995-01-01")]) %>%
+ theme_minimal() + xlab("") + ylab("Nominal unit labour cost based on persons") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(4) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "", p = "", a = 1))
D1_SAL_PER - Individual Countries
Table, 2019
Code
%>%
nama_10_lp_ulc filter(time == "2019",
== "D1_SAL_PER") %>%
na_item select(geo, unit, values) %>%
spread(unit, values) %>%
left_join(geo, by = "geo") %>%
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(-NAC) %>%
select(Flag, geo, Geo, everything()) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .} {
Germany
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("DE"),
== "D1_SAL_PER") %>%
na_item %>%
year_to_date left_join(unit, by = "unit") %>%
group_by(Unit) %>%
mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.45, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(a= 1, su = "", p = ""))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("DE"),
== "D1_SAL_PER") %>%
na_item %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
group_by(Unit) %>%
mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.45, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(a= 1, su = "", p = ""))
Italy
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IT"),
== "D1_SAL_PER") %>%
na_item %>%
year_to_date left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values / 1000, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(a= 1, su = "k€", p = ""))
Iceland
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS"),
== "D1_SAL_PER") %>%
na_item %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
group_by(unit) %>%
mutate(values = 100*values/values[date == as.Date("2008-01-01")]) %>%
left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour (2008 = 100)") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 400, 20),
labels = scales::dollar_format(a= 1, su = "", p = ""))
D1_SAL_HW - Individual Countries
Table, 2019
Code
%>%
nama_10_lp_ulc filter(time == "2019",
== "D1_SAL_HW") %>%
na_item select(geo, unit, values) %>%
spread(unit, values) %>%
left_join(geo, by = "geo") %>%
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(-NAC) %>%
select(Flag, geo, Geo, everything()) %>%
if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .} {
Eurozone, Greece, Portugal, Spain
Code
%>%
nama_10_lp_ulc filter(geo %in% c("EA", "PT", "EL", "ES"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(4) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
Germany
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("DE"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("DE"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
Italy
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IT"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
Spain
Code
%>%
nama_10_lp_ulc filter(geo %in% c("ES"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
Greece
Code
%>%
nama_10_lp_ulc filter(geo %in% c("EL"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
Portugal
Code
%>%
nama_10_lp_ulc filter(geo %in% c("PT"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(a= 1, su = "€", p = ""))
Iceland
All (2008-2019)
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS"),
== "D1_SAL_HW") %>%
na_item %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
group_by(unit) %>%
mutate(values = 100*values/values[date == as.Date("2008-01-01")]) %>%
left_join(unit, by = "unit") %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour (2008 = 100)") +
ggplot geom_line(aes(x = date, y = values, color = Unit, linetype = Unit)) +
scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2020, 1), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 400, 20),
labels = scales::dollar_format(a= 1, su = "", p = ""))
D1_SAL_HW, EUR - Compensation of employees per hour worked
France, Germany, Italy
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Iceland, Ireland, Denmark
Euro
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS", "IE", "DK"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
NAC
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS", "IE", "DK"),
== "D1_SAL_HW",
na_item == "NAC") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Luxembourg, Norway, Switzerland
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("CH", "LU", "NO"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("CH", "LU", "NO"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Belgium, Denmark, Iceland
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS", "BE", "DK"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS", "BE", "DK"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
France, Ireland, Netherlands
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IE", "FR", "NL"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Austria, Finland, Sweden
Code
%>%
nama_10_lp_ulc filter(geo %in% c("AT", "FI", "SE"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Germany, Italy, United Kingdom
Code
%>%
nama_10_lp_ulc filter(geo %in% c("UK", "DE", "IT"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
European Union, Euro Area
Code
%>%
nama_10_lp_ulc filter(geo %in% c("EU15", "EU28", "EA19"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = Geo)) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Italy, Spain, Slovenia
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IT", "ES", "SI"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Cyprus, Estonia, Malta
Code
%>%
nama_10_lp_ulc filter(geo %in% c("MT", "CY", "EE"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Greece, Czechia, Portugal
Code
%>%
nama_10_lp_ulc filter(geo %in% c("PT", "CZ", "EL"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Latvia, Lithuania, Slovakia
Code
%>%
nama_10_lp_ulc filter(geo %in% c("LV", "SK", "LT"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Croatia, Hungary, Poland
Euro
Code
%>%
nama_10_lp_ulc filter(geo %in% c("HR", "PL", "HU"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
National Currency
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("HR", "PL", "HU"),
== "D1_SAL_HW",
na_item == "NAC") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "€", p = "", a = 1))
Index
Code
%>%
nama_10_lp_ulc # HR: Croatia
filter(geo %in% c("HR", "PL", "HU"),
== "D1_SAL_HW",
na_item %in% c("EUR", "NAC")) %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(unit, by = "unit") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(color = ifelse(geo == "HR", color2, color)) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("1995-01-01")]) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color, linetype = Unit)) +
scale_color_identity() + add_flags(6) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 1000, 50))
Romania, Bulgaria
Euro
Code
%>%
nama_10_lp_ulc filter(geo %in% c("RO", "BG"),
== "D1_SAL_HW",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(2) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(su = "€", p = "", a = 1))
NAC
Code
%>%
nama_10_lp_ulc filter(geo %in% c("RO", "BG"),
== "D1_SAL_HW",
na_item == "NAC") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Compensation of employees per hour worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(2) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(su = "€", p = "", a = 1))
D1_SAL_PER - Compensation per employee
France, Germany, Italy
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Iceland, Ireland, Denmark
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS", "IE", "DK"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Luxembourg, Norway, Switzerland
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("CH", "LU", "NO"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("CH", "LU", "NO"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Belgium, Denmark, Iceland
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS", "BE", "DK"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
1995-
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IS", "BE", "DK"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
France, Ireland, Netherlands
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IE", "FR", "NL"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
1995
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IE", "FR", "NL"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Austria, Finland, Sweden
Code
%>%
nama_10_lp_ulc filter(geo %in% c("AT", "FI", "SE"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Germany, Italy, United Kingdom
Code
%>%
nama_10_lp_ulc filter(geo %in% c("UK", "DE", "IT"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
European Union, Euro Area
Code
%>%
nama_10_lp_ulc filter(geo %in% c("EU15", "EU28", "EA19"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values/1000, color = Geo, linetype = Geo)) +
scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "k€", p = ""))
France, Germany, Italy, Spain, Poland
All
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT", "ES", "NL"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(5) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
1995-
Euros
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT", "ES", "NL"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(5) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Index
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT", "ES", "NL"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee (1995-100)") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(5) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10))
Italy, Spain, Slovenia
Code
%>%
nama_10_lp_ulc filter(geo %in% c("IT", "ES", "SI"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Cyprus, Estonia, Malta
Code
%>%
nama_10_lp_ulc filter(geo %in% c("MT", "CY", "EE"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Greece, Czechia, Portugal
Code
%>%
nama_10_lp_ulc filter(geo %in% c("PT", "CZ", "EL"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Latvia, Lithuania, Slovakia
Code
%>%
nama_10_lp_ulc filter(geo %in% c("LV", "SK", "LT"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Croatia, Hungary, Poland
Code
%>%
nama_10_lp_ulc filter(geo %in% c("HR", "PL", "HU"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
Romania, Bulgaria
Code
%>%
nama_10_lp_ulc filter(geo %in% c("RO", "BG"),
== "D1_SAL_PER",
na_item == "EUR") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
+ theme_minimal() + xlab("") + ylab("Compensation per employee") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(2) +
theme(legend.position = c(0.3, 0.85),
legend.title = element_blank()) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_log10(breaks = seq(0, 200, 1),
labels = scales::dollar_format(su = "k€", p = "", a = 1))
NULC_PER - Nominal unit labour cost based on persons
France, Germany, Italy
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT"),
== "NULC_PER",
na_item == "I15") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Nominal unit labour cost based on persons") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "", p = ""))
France, Germany
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE"),
== "NULC_PER",
na_item == "I15") %>%
unit %>%
year_to_date filter(date >= as.Date("1990-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Nominal unit labour cost based on persons") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(2) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 200, 5),
labels = scales::dollar_format(su = "", p = ""))
NULC_HW - Nominal unit labour cost based on hours worked
Code
%>%
nama_10_lp_ulc filter(geo %in% c("FR", "DE", "IT"),
== "NULC_HW",
na_item == "I15") %>%
unit %>%
year_to_date left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
+ theme_minimal() + xlab("") + ylab("Nominal unit labour cost based on hours worked") +
ggplot geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + add_flags(3) +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2025, 5), "-01-01")),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(0, 200, 10),
labels = scales::dollar_format(su = "", p = ""))