Unit labour costs and labour productivity (employment based), Total economy - ULC_EEQ
Data - OECD
Last observation: Q4 2023 (N = 27) · 2023 (N = 4)
First observation: 1949 (N = 1) · Q1 1949 (N = 3)
Last data update: 02 août 2026, 09:17
Last compile: 03 sept. 2026, 00:23
Structure
Number of observations
Code
ULC_EEQ |>
left_join(ULC_EEQ_var$SUBJECT, by = c("SUBJECT")) |>
group_by(SUBJECT, Subject, MEASURE, FREQUENCY) |>
summarise(Nobs = n()) |>
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}Data Structure
Code
ULC_EEQ_var$VAR_DESC %>%
{if (is_html_output()) print_table(.) else .}| id | description |
|---|---|
| LOCATION | Country |
| SUBJECT | Subject |
| MEASURE | Measure |
| FREQUENCY | Frequency |
| TIME | Time |
| OBS_VALUE | Observation Value |
| TIME_FORMAT | Time Format |
| OBS_STATUS | Observation Status |
| UNIT | Unit |
| POWERCODE | Unit multiplier |
| REFERENCEPERIOD | Reference period |
Unit Labour Cost
France / Germany
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQEUL01",
LOCATION %in% c("FRA", "DEU"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() +
scale_x_date(breaks = seq(1920, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 10)) +
ylab("Unit Labour Cost") + xlab("")
France / Germany from 1990
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQEUL01",
LOCATION %in% c("FRA", "DEU"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("GDP per person employed") + xlab("") + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
France / Germany / United States
Unit Labour Costs - ULQEUL01
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQEUL01",
LOCATION %in% c("FRA", "DEU", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1996-01-01")]) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("GDP per person employed") + xlab("") + add_3flags +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
GDP per person employed - ULQELP01
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQELP01",
LOCATION %in% c("FRA", "DEU", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1996-01-01")]) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("GDP per person employed") + xlab("") + add_3flags +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
Labour Compensation per employed person - ULQECU01
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQECU01",
LOCATION %in% c("FRA", "DEU", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1996-01-01")]) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("Labour Compensation per employed person") + xlab("") + add_3flags +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 300, 10))
Euro area / United States
Unit Labour Costs - ULQEUL01
All
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQEUL01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1996-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("Unit Labour Cost") + xlab("") + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5))
1995-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQEUL01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1995) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1995-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("Unit Labour Cost") + xlab("") + add_2flags +
scale_x_date(breaks = seq(1921, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5))
1996-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQEUL01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1996) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1996-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("Unit Labour Cost") + xlab("") + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 200, 5))
2017-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQEUL01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 2017) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("2017-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("Unit Labour Cost") + xlab("") + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
2020-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQEUL01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 2020) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("2020-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("Unit Labour Cost") + xlab("") + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
GDP per person employed - ULQELP01
All
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQELP01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1996-01-01")]) |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() + ylab("GDP per person employed") + xlab("") +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
2017-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQELP01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 2017) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("2017-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("Unit Labour Cost") + xlab("") + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
2020-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQELP01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 2020) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("2020-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("Unit Labour Cost") + xlab("") + add_2flags +
scale_x_date(breaks = seq(1920, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
Labour Compensation per employed person - ULQECU01
All
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQECU01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("1996-01-01")]) |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() + ylab("Labour Compensation per employed person") + xlab("") +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 300, 10))
2017-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQECU01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 2017) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("2017-01-01")]) |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() + ylab("Labour Compensation per employed person") + xlab("") +
scale_x_date(breaks = seq(1920, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 300, 10))
2019-Q4
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQECU01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
mutate(Location = ifelse(LOCATION == "EA19", "Euro area", "US"),
date = zoo::as.yearqtr(obsTime, format = "%Y-Q%q")) |>
filter(date >= zoo::as.yearqtr("2019 Q4")) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == zoo::as.yearqtr("2019 Q4")]) |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() + ylab("100 = 2019-Q4") + xlab("") +
zoo::scale_x_yearqtr(format = "%Y-Q%q",
n = 15) +
scale_color_manual(values = c("#003399", "#B22234")) +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, hjust = 1)) +
scale_y_continuous(breaks = seq(0, 300, 2))
2020-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQECU01",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 2020) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("2020-01-01")]) |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() + ylab("Labour Compensation per employed person") + xlab("") +
scale_x_date(breaks = seq(1920, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 300, 2))
Euro area vs. US
2017-Q2
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$SUBJECT, by = "SUBJECT") |>
mutate(Subject = ifelse(SUBJECT == "ULQECU01", "Labour Compensation\nper person employed", Subject)) |>
mutate(Location = ifelse(LOCATION == "EA19", "Euro area", "US"),
date = zoo::as.yearqtr(obsTime, format = "%Y-Q%q")) |>
filter(date >= zoo::as.yearqtr("2017 Q2")) |>
mutate(Subject = factor(Subject, levels = c("Unit Labour Costs ",
"Labour Compensation\nper person employed",
"GDP per person employed"))) |>
group_by(Location, Subject) |>
mutate(obsValue = 100*obsValue/obsValue[date == zoo::as.yearqtr("2017 Q2")]) |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() + ylab("100 = 2019-Q4") + xlab("") +
zoo::scale_x_yearqtr(format = "%Y-Q%q",
breaks = zoo::as.yearqtr(c("2017 Q2", "2017 Q4", "2018 Q2", "2018 Q4",
"2019 Q2", "2019 Q4", "2020 Q2", "2020 Q4",
"2021 Q2", "2021 Q4", "2022 Q2", "2022 Q4",
"2023 Q2"))) +
scale_color_manual(values = c("#003399", "#B22234")) +
theme(legend.position = "top",
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, hjust = 1)) +
scale_y_continuous(breaks = seq(0, 300, 2)) +
facet_wrap(~ Subject)
2019-Q4
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
LOCATION %in% c("EA19", "USA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$SUBJECT, by = "SUBJECT") |>
mutate(Subject = ifelse(SUBJECT == "ULQECU01", "Labour Compensation\nper person employed", Subject)) |>
mutate(Location = ifelse(LOCATION == "EA19", "Euro area", "US"),
date = zoo::as.yearqtr(obsTime, format = "%Y-Q%q")) |>
filter(date >= zoo::as.yearqtr("2019 Q4")) |>
mutate(Subject = factor(Subject, levels = c("Unit Labour Costs ",
"Labour Compensation\nper person employed",
"GDP per person employed"))) |>
group_by(Location, Subject) |>
mutate(obsValue = 100*obsValue/obsValue[date == zoo::as.yearqtr("2019 Q4")]) |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() + ylab("100 = 2019-Q4") + xlab("") +
zoo::scale_x_yearqtr(format = "%Y-Q%q",
breaks = zoo::as.yearqtr(c("2019 Q4", "2020 Q2", "2020 Q4",
"2021 Q2", "2021 Q4", "2022 Q2",
"2022 Q4", "2023 Q2"))) +
scale_color_manual(values = c("#003399", "#B22234")) +
theme(legend.position = "top",
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, hjust = 1)) +
scale_y_continuous(breaks = seq(0, 300, 2)) +
facet_wrap(~ Subject)
France, US, Eurozone
2019-Q4
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
LOCATION %in% c("EA19", "USA", "FRA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$SUBJECT, by = "SUBJECT") |>
mutate(Subject = ifelse(SUBJECT == "ULQECU01", "Labour Compensation\nper person employed", Subject)) |>
mutate(Location = case_when(LOCATION == "EA19" ~ "Euro area",
LOCATION == "USA" ~ "United States",
LOCATION == "FRA" ~ "France",
T ~ "NA"),
date = zoo::as.yearqtr(obsTime, format = "%Y-Q%q")) |>
filter(date >= zoo::as.yearqtr("2019 Q4")) |>
mutate(Subject = factor(Subject, levels = c("Unit Labour Costs ",
"Labour Compensation\nper person employed",
"GDP per person employed"))) |>
group_by(Location, Subject) |>
mutate(obsValue = 100*obsValue/obsValue[date == zoo::as.yearqtr("2019 Q4")]) |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = Location)) +
theme_minimal() + ylab("100 = 2019-Q4") + xlab("") + add_9flags +
zoo::scale_x_yearqtr(format = "%Y-Q%q",
breaks = zoo::as.yearqtr(c("2019 Q4", "2020 Q2", "2020 Q4",
"2021 Q2", "2021 Q4", "2022 Q2",
"2022 Q4", "2023 Q2"))) +
scale_color_manual(values = c("#FFCC00", "#002395", "#B22234")) +
theme(legend.position = "top",
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, hjust = 1)) +
scale_y_continuous(breaks = seq(0, 300, 2)) +
facet_wrap(~ Subject)
2000-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQELP01",
LOCATION %in% c("EA19", "USA", "FRA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 2008) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("2008-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("GDP Per person employed") + xlab("") + add_3flags +
scale_x_date(breaks = seq(1920, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))
2017-
Code
ULC_EEQ |>
filter(MEASURE == "IXOBSA",
SUBJECT == "ULQELP01",
LOCATION %in% c("EA19", "USA", "FRA"),
FREQUENCY == "Q") |>
left_join(ULC_EEQ_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 2017) |>
group_by(Location) |>
mutate(obsValue = 100*obsValue/obsValue[date == as.Date("2017-01-01")]) |>
mutate(Location = ifelse(LOCATION == "EA19", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + geom_line(aes(x = date, y = obsValue, color = color)) +
theme_minimal() + ylab("GDP Per person employed") + xlab("") + add_3flags +
scale_x_date(breaks = seq(1920, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_color_identity() +
theme(legend.position = c(0.8, 0.2),
legend.title = element_blank()) +
scale_y_continuous(breaks = seq(0, 200, 5))


