Last observation: Q2 2026 (N = 40) · 2025 (N = 88)
First observation: 1947 (N = 2) · Q1 1947 (N = 2)
Last data update: 09 oct. 2026, 22:22
Last compile: 09 oct. 2026, 23:38
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Zone euro à 20", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
#mutate(color = color) %>%
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1995T1 = 100)") +
geom_line(aes(x = date, y = obsValue, color = Ref_area)) +
# #003399, #3C3B6E
scale_color_manual(values = c("#B22234", "#003399")) +
geom_rect(data = nber_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#B22234', alpha = 0.1) +
geom_rect(data = cepr_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#003399', alpha = 0.1) +
scale_x_date(breaks = c(seq(1940, 2100, 5)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.26, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 1000, 20))
plot <- QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Zone euro à 20", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
#mutate(color = color) %>%
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1995T1 = 100)") +
geom_line(aes(x = date, y = obsValue, color = Ref_area)) +
# #003399, #3C3B6E
scale_color_manual(values = c("#B22234", "#003399")) +
geom_rect(data = nber_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#B22234', alpha = 0.1) +
geom_rect(data = cepr_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#003399', alpha = 0.1) +
scale_x_date(breaks = c(seq(1994, 2100, 5), seq(1997, 2100, 5)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.26, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(50, 200, 5))
plot
save(plot, file = "QNA_EXPENDITURE_CAPITA_files/figure-html/USA-EA-1995-1.RData")plot <- QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "EU27_2020"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Zone euro à 20", Ref_area),
Ref_area = ifelse(REF_AREA == "EU27_2020", "UE à 27", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
ungroup() |>
add_flag_color("Ref_area") |>
#mutate(color = color) %>%
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1999T1 = 100)") +
geom_line(aes(x = date, y = obsValue, color = Ref_area, linetype = Ref_area)) +
# #003399, #3C3B6E
scale_color_manual(values = c("#B22234", "#003399", "#003399")) +
scale_linetype_manual(values = c("solid", "solid", "dashed")) +
geom_rect(data = nber_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#B22234', alpha = 0.1) +
geom_rect(data = cepr_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#003399', alpha = 0.1) +
scale_x_date(breaks = c(seq(1995, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.26, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(50, 200, 5)) +
labs(caption = "")
plot
save(plot, file = "QNA_EXPENDITURE_CAPITA_files/figure-html/USA-EA-EU27-1999-1.RData")plot <- QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1999-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
#mutate(color = color) %>%
ggplot() + theme_minimal() + xlab("") + ylab("GDP per capita (100 = 1999Q1)") +
geom_line(aes(x = date, y = obsValue, color = Ref_area)) +
# #003399, #3C3B6E
scale_color_manual(values = c("#003399", "#B22234")) + add_2flags +
geom_rect(data = nber_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#B22234', alpha = 0.1) +
geom_rect(data = cepr_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#003399', alpha = 0.1) +
scale_x_date(breaks = c(seq(1999, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.26, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(50, 200, 5))
plot
plot <- QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1999-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Zone euro à 20", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
ungroup() |>
add_flag_color("Ref_area") |>
#mutate(color = color) %>%
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1999T1 = 100)") +
geom_line(aes(x = date, y = obsValue, color = Ref_area)) +
# #003399, #3C3B6E
scale_color_manual(values = c("#B22234", "#003399")) +
geom_rect(data = nber_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#B22234', alpha = 0.1) +
geom_rect(data = cepr_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#003399', alpha = 0.1) +
scale_x_date(breaks = c(seq(1999, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.26, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(50, 200, 5)) +
labs(caption = "")
plot
save(plot, file = "QNA_EXPENDITURE_CAPITA_files/figure-html/USA-EA-1999-1.RData")plot <- QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "EU27_2020"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1999-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Zone euro à 20", Ref_area),
Ref_area = ifelse(REF_AREA == "EU27_2020", "UE à 27", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
ungroup() |>
add_flag_color("Ref_area") |>
#mutate(color = color) %>%
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1999T1 = 100)") +
geom_line(aes(x = date, y = obsValue, color = Ref_area, linetype = Ref_area)) +
# #003399, #3C3B6E
scale_color_manual(values = c("#B22234", "#003399", "#003399")) +
scale_linetype_manual(values = c("solid", "solid", "dashed")) +
geom_rect(data = nber_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#B22234', alpha = 0.1) +
geom_rect(data = cepr_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#003399', alpha = 0.1) +
scale_x_date(breaks = c(seq(1999, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.26, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(50, 200, 5)) +
labs(caption = "")
plot
save(plot, file = "QNA_EXPENDITURE_CAPITA_files/figure-html/USA-EA-EU27-1999-1.RData")plot <- QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2000-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Euro area (20 countries)", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (2000T1 = 100)") +
geom_line(aes(x = date, y = obsValue, color = Ref_area)) +
# #003399, #3C3B6E
scale_color_manual(values = c("#B22234", "#003399")) +
geom_rect(data = nber_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#B22234', alpha = 0.1) +
geom_rect(data = cepr_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#003399', alpha = 0.1) +
scale_x_date(breaks = c(seq(2000, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.26, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(50, 200, 5))
save(plot, file = "QNA_EXPENDITURE_CAPITA_files/figure-html/USA-EA-2000-1.RData")
plot
# Zone euro pondérée par la population de chaque pays (source : QNA_POP_EMPNC),
# à l'exclusion de l'Irlande (PIB par habitant faussé par les multinationales).
euro_ex_irl <- c("AUT", "BEL", "DEU", "ESP", "EST", "FIN", "FRA", "GRC", "HRV",
"ITA", "LTU", "LUX", "LVA", "NLD", "PRT", "SVK", "SVN")
gdp_pc_euro <- QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% euro_ex_irl,
FREQ == "Q",
PRICE_BASE == "LR") |>
select(REF_AREA, obsTime, gdp_pc = obsValue)
pop_euro <- QNA_POP_EMPNC |>
filter(REF_AREA %in% euro_ex_irl,
FREQ == "Q",
TRANSACTION == "POP",
ADJUSTMENT == "N") |>
select(REF_AREA, obsTime, pop = obsValue)
# Some countries (typically France, Luxembourg) lag the rest in the latest
# quarter for either GDP or population. Rather than drop the whole quarter,
# carry it forward: population barely moves quarter to quarter, and GDP is
# scaled by Eurostat's own real growth rate for that country/quarter when
# available (namq_10_gdp), or left flat otherwise.
iso3_to_iso2 <- c(AUT = "AT", BEL = "BE", DEU = "DE", ESP = "ES", EST = "EE",
FIN = "FI", FRA = "FR", GRC = "EL", HRV = "HR", ITA = "IT",
LTU = "LT", LUX = "LU", LVA = "LV", NLD = "NL", PRT = "PT",
SVK = "SK", SVN = "SI")
estat_growth <- namq_10_gdp |>
filter(geo %in% iso3_to_iso2,
na_item == "B1GQ",
unit == "CLV10_MEUR",
s_adj == "SCA") |>
mutate(REF_AREA = names(iso3_to_iso2)[match(geo, iso3_to_iso2)],
obsTime = paste0(substr(time, 1, 4), "-", substr(time, 5, 6))) |>
arrange(REF_AREA, obsTime) |>
group_by(REF_AREA) |>
mutate(growth = values / lag(values)) |>
ungroup() |>
select(REF_AREA, obsTime, growth)
latest_q <- max(gdp_pc_euro$obsTime, pop_euro$obsTime)
prior_q <- max(gdp_pc_euro$obsTime[gdp_pc_euro$obsTime < latest_q])
missing_gdp <- setdiff(euro_ex_irl, gdp_pc_euro$REF_AREA[gdp_pc_euro$obsTime == latest_q])
missing_pop <- setdiff(euro_ex_irl, pop_euro$REF_AREA[pop_euro$obsTime == latest_q])
carried_gdp <- gdp_pc_euro |>
filter(REF_AREA %in% missing_gdp, obsTime == prior_q) |>
left_join(estat_growth |> filter(obsTime == latest_q), by = "REF_AREA") |>
mutate(gdp_pc = gdp_pc * coalesce(growth, 1), obsTime = latest_q) |>
select(REF_AREA, obsTime, gdp_pc)
carried_pop <- pop_euro |>
filter(REF_AREA %in% missing_pop, obsTime == prior_q) |>
mutate(obsTime = latest_q) |>
select(REF_AREA, obsTime, pop)
gdp_pc_euro <- bind_rows(gdp_pc_euro, carried_gdp)
pop_euro <- bind_rows(pop_euro, carried_pop)
ea_no_irl <- gdp_pc_euro |>
inner_join(pop_euro, by = c("REF_AREA", "obsTime")) |>
group_by(obsTime) |>
filter(n() == length(euro_ex_irl)) |>
summarise(obsValue = sum(gdp_pc * pop) / sum(pop), .groups = "drop") |>
mutate(REF_AREA = "EA_NOIRL", Ref_area = "Euro area (without Ireland)")
plot <- QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA == "USA",
FREQ == "Q",
PRICE_BASE == "LR") |>
select(REF_AREA, Ref_area, obsTime, obsValue) |>
bind_rows(ea_no_irl) |>
quarter_to_date() |>
filter(date >= as.Date("2000-01-01")) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (2000T1 = 100)") +
geom_line(aes(x = date, y = obsValue, color = Ref_area)) +
# #003399, #3C3B6E
scale_color_manual(values = c("#003399", "#B22234")) +
geom_rect(data = nber_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#B22234', alpha = 0.1) +
geom_rect(data = cepr_recessions |>
filter(Peak > as.Date("1999-01-01")),
aes(xmin = Peak, xmax = Trough, ymin = 0, ymax = +Inf),
fill = '#003399', alpha = 0.1) +
scale_x_date(breaks = c(seq(2000, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.3, 0.8),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(50, 200, 5))
save(plot, file = "QNA_EXPENDITURE_CAPITA_files/figure-html/USA-EA-2000-2-1.RData")
plot
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("FRA", "PRT", "ESP", "GRC", "ITA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("2008-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP Per capita (2008 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_5flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("FRA", "PRT", "ESP", "GRC", "ITA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2008-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("2008-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (2008 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_5flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("FRA", "DEU", "GRC", "EA", "USA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("2008-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP Per capita (2008 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_5flags +
scale_color_identity() +
scale_x_date(breaks = seq(1995, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("FRA", "DEU", "GRC", "EA", "USA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("1995-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP Per capita (1995 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_5flags +
scale_color_identity() +
scale_x_date(breaks = seq(1995, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("FRA", "EA", "USA", "DEU"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1996-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("1996-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP Per capita (1996 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_flags +
scale_color_identity() +
scale_x_date(breaks = seq(1996, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("FRA", "DEU", "GRC", "EA", "USA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2001-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("2008-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP Per capita (2008 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_5flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("FRA", "DEU", "GRC", "EA", "USA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2001-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("2001-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP Per capita (2001 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_5flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("FRA", "DEU", "GRC", "EA", "USA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2008-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("2008-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (2008 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_5flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "FRA", "DEU"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1995 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_4flags +
scale_color_identity() +
scale_x_date(breaks = seq(1900, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(100, 1000, 20))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "FRA", "DEU"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1995 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_4flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "FRA", "ITA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_4flags +
scale_color_identity() +
scale_x_date(breaks = seq(1900, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(100, 1000, 20))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "FRA", "ITA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1995-01-01")) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1995 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_4flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "FRA", "ITA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1999-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1999 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_4flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(1999, 2100, 5), seq(1997, 2100, 5)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "FRA", "ITA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2000-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (2000 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_4flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "FRA", "ITA", "DEU"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2017-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (Janvier 2017 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "FRA", "ITA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2017-04-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (Avril 2017 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_4flags +
scale_color_identity() +
scale_x_date(breaks = seq(1960, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "ITA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("1999-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (1999 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_3flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(1999, 2100, 5), seq(1997, 2100, 5)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2000-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("PIB par habitant (2000 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_2flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(2000, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2000-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP per capita (2000 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_2flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(2000, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "GRC", "ESP"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2000-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area),
Ref_area = ifelse(REF_AREA == "OECD", "OECD members", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[date == as.Date("2008-01-01")]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP per capita (2000 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_4flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(2000, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "OECD"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2000-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area),
Ref_area = ifelse(REF_AREA == "OECD", "OECD members", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP per capita (2000 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_3flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(2000, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "OECD"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2010-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area),
Ref_area = ifelse(REF_AREA == "OECD", "OECD members", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP per capita (2010 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_3flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(2000, 2100, 2)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "OECD"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2011-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area),
Ref_area = ifelse(REF_AREA == "OECD", "OECD members", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP per capita (2010 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_3flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(2000, 2100, 1)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))
QNA_EXPENDITURE_CAPITA |>
filter(REF_AREA %in% c("USA", "EA", "OECD"),
FREQ == "Q",
PRICE_BASE == "LR") |>
quarter_to_date() |>
filter(date >= as.Date("2019-01-01")) |>
rename(Ref_area = Ref_area) |>
mutate(Ref_area = ifelse(REF_AREA == "EA", "Europe", Ref_area),
Ref_area = ifelse(REF_AREA == "OECD", "OECD members", Ref_area)) |>
group_by(Ref_area) |>
arrange(date) |>
mutate(obsValue = 100 * obsValue / obsValue[1]) |>
add_flag_color("Ref_area") |>
ggplot() + theme_minimal() + xlab("") + ylab("GDP per capita (2010 = 100)") +
geom_line(aes(x = date, y = obsValue, color = color)) + add_3flags +
scale_color_identity() +
scale_x_date(breaks = c(seq(2000, 2100, 1)) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = "none") +
scale_y_log10(breaks = seq(50, 200, 5))