Info
Last
Code
namq_10_gdp %>%
group_by(time) %>%
summarise(Nobs = n()) %>%
arrange(desc(time)) %>%
head(3) %>%
print_table_conditional()
2024Q4 |
3526 |
2024Q3 |
61050 |
2024Q2 |
62563 |
na_item
Code
namq_10_gdp %>%
left_join(na_item, by = "na_item") %>%
group_by(na_item, Na_item) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
s_adj
Code
namq_10_gdp %>%
left_join(s_adj, by = "s_adj") %>%
group_by(s_adj, S_adj) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
{if (is_html_output()) print_table(.) else .}
SCA |
Seasonally and calendar adjusted data |
3476595 |
NSA |
Unadjusted data (i.e. neither seasonally adjusted nor calendar adjusted data) |
3373649 |
CA |
Calendar adjusted data, not seasonally adjusted data |
470777 |
SA |
Seasonally adjusted data, not calendar adjusted data |
411345 |
geo
Code
namq_10_gdp %>%
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="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}
unit
Code
namq_10_gdp %>%
left_join(unit, by = "unit") %>%
group_by(unit, Unit) %>%
summarise(Nobs = n()) %>%
arrange(-Nobs) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
time
Code
namq_10_gdp %>%
group_by(time) %>%
summarise(Nobs = n()) %>%
arrange(desc(time)) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
Live
Last GDP Numbers
Instantaneous
Code
namq_10_gdp %>%
filter(time %in% c("2021Q2", "2021Q1", "2019Q4", "2017Q2"),
na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
left_join(geo, by = "geo") %>%
select(geo, Geo, time, values) %>%
spread(time, values) %>%
mutate(`2019Q4-2021Q2` = round(100*(`2021Q2`/`2019Q4`-1), 2)) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}
Average
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("2019-10-01")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[date == as.Date("2019-10-01")],
values = cumsum(values) / seq_along(values)) %>%
group_by(geo) %>%
do(tail(., 1)) %>%
left_join(geo, by = "geo") %>%
select(geo, Geo, date, values) %>%
arrange(values) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}
Germany, Italy, France, Spain
Table
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "SCA",
unit == "CLV10_MEUR",
geo %in% c("DE", "IT", "ES", "FR")) %>%
quarter_to_date %>%
arrange(date) %>%
filter(date == as.Date("2019-10-01") | date == last(date)) %>%
group_by(geo) %>%
mutate(values = 100*values/values[1]) %>%
left_join(geo, by = "geo") %>%
select(date, geo, Geo, values) %>%
print_table_conditional()
2019-10-01 |
DE |
Germany |
100.0000 |
2019-10-01 |
ES |
Spain |
100.0000 |
2019-10-01 |
FR |
France |
100.0000 |
2019-10-01 |
IT |
Italy |
100.0000 |
2024-10-01 |
DE |
Germany |
99.8733 |
2024-10-01 |
ES |
Spain |
107.5620 |
2024-10-01 |
FR |
France |
103.9803 |
2024-10-01 |
IT |
Italy |
105.5960 |
Graph
Code
data <- namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
geo %in% c("DE", "IT", "ES", "FR")) %>%
quarter_to_date %>%
filter(date >= as.Date("2019-10-01")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[1]) %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(date = zoo::as.yearqtr(paste0(year(date), " Q", quarter(date))))
data %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") + add_4flags +
zoo::scale_x_yearqtr(labels = date_format("%Y Q%q"),
breaks = seq(min(data$date), max(data$date), by = 0.25)) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_log10(breaks = seq(10, 300, 5))
Germany, France, Europe
2017T2-
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
geo %in% c("DE", "EA", "FR")) %>%
quarter_to_date %>%
filter(date >= as.Date("2017-04-01")) %>%
group_by(geo) %>%
mutate(values = 100*values/values[date == as.Date("2017-04-01")]) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(date = zoo::as.yearqtr(paste0(year(date), " Q", quarter(date)))) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) + add_3flags +
scale_color_identity() + theme_minimal() + xlab("") + ylab("PIB réel (Base 100 = 2019T4)") +
zoo::scale_x_yearqtr(labels = date_format("%Y Q%q"),
breaks = seq(zoo::as.yearqtr("2017 Q2"), zoo::as.yearqtr("2100 Q1"), by = 0.25)) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_log10(breaks = seq(10, 300, 2))
2019-
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
geo %in% c("DE", "EA", "FR")) %>%
quarter_to_date %>%
filter(date >= as.Date("2019-10-01")) %>%
group_by(geo) %>%
mutate(values = 100*values/values[date == as.Date("2019-10-01")]) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(date = zoo::as.yearqtr(paste0(year(date), " Q", quarter(date)))) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) + add_3flags +
scale_color_identity() + theme_minimal() + xlab("") + ylab("PIB réel (Base 100 = 2019T4)") +
zoo::scale_x_yearqtr(labels = date_format("%Y Q%q"),
breaks = seq(zoo::as.yearqtr("2019 Q4"), zoo::as.yearqtr("2100 Q1"), by = 0.25)) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_log10(breaks = seq(10, 300, 2))
2022-
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
geo %in% c("DE", "EA", "FR")) %>%
quarter_to_date %>%
filter(date >= as.Date("2021-10-01")) %>%
group_by(geo) %>%
mutate(values = 100*values/values[date == as.Date("2021-10-01")]) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(date = zoo::as.yearqtr(paste0(year(date), " Q", quarter(date)))) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) + add_3flags +
scale_color_identity() + theme_minimal() + xlab("") + ylab("PIB réel (Base 100 = 2019T4)") +
zoo::scale_x_yearqtr(labels = date_format("%Y Q%q"),
breaks = seq(zoo::as.yearqtr("2019 Q4"), zoo::as.yearqtr("2100 Q1"), by = 0.25)) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_log10(breaks = seq(10, 300, 1))
Average
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
geo %in% c("DE", "EA", "FR")) %>%
quarter_to_date %>%
filter(date >= as.Date("2019-10-01")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[date == as.Date("2019-10-01")],
values = cumsum(values) / seq_along(values)) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(date = zoo::as.yearqtr(paste0(year(date), " Q", quarter(date)))) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("PIB réel moyen depuis le début du Covid-19") +
zoo::scale_x_yearqtr(labels = date_format("%Y Q%q"),
breaks = seq(zoo::as.yearqtr("2019 Q4"), zoo::as.yearqtr("2100 Q1"), by = 0.25)) +
add_3flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_log10(breaks = seq(10, 300, 2))
Average 2
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
geo %in% c("DE", "EA", "FR", "EL", "BE", "CH", "IT", "ES")) %>%
quarter_to_date %>%
filter(date >= as.Date("2019-10-01")) %>%
group_by(geo) %>%
arrange(date) %>%
mutate(values = 100*values/values[date == as.Date("2019-10-01")],
values = cumsum(values) / seq_along(values)) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(date = zoo::as.yearqtr(paste0(year(date), " Q", quarter(date)))) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) + add_8flags +
scale_color_identity() + theme_minimal() + xlab("") + ylab("PIB réel moyen depuis le début du Covid-19") +
zoo::scale_x_yearqtr(labels = date_format("%Y Q%q"),
breaks = seq(zoo::as.yearqtr("2019 Q4"), zoo::as.yearqtr("2100 Q1"), by = 0.25)) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_log10(breaks = seq(10, 300, 2))
Deflators
Shall we compare deflators to inflation ? (do a stacked graph with both)
GDP
Table, PD_PCH_SM_EUR
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD_PCH_SM_EUR",
time %in% c("2022Q1", "2022Q2", "2022Q3","2022Q4", max(time))) %>%
select(time, na_item, geo, values) %>%
left_join(geo, by = "geo") %>%
spread(time, values) %>%
arrange(-`2022Q4`) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
Table, PD15_EUR
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD15_EUR",
time %in% c("2022Q1", "2022Q2", "2022Q3","2022Q4", max(time))) %>%
select(time, na_item, geo, values) %>%
left_join(geo, by = "geo") %>%
spread(time, values) %>%
arrange(-`2022Q4`) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
Germany, France
GDP
All
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD15_EUR",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("1996-01-01")]) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("GDP Deflator") +
scale_y_log10(breaks = seq(90, 200, 5)) +
geom_label_repel(data = . %>% filter(date == max(date)),
aes(x = date, y = values, label = round(values, 1), color = color))
1999-
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD15_EUR",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
filter(date >= as.Date("1999-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("1999-01-01")]) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("GDP Deflator") +
scale_y_log10(breaks = seq(90, 200, 5)) +
geom_label_repel(data = . %>% filter(date == max(date)),
aes(x = date, y = values, label = round(values, 1), color = color))
2018-
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD15_EUR",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
filter(date >= as.Date("2018-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("2018-01-01")]) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("GDP Deflator") +
scale_y_log10(breaks = seq(90, 200, 5)) +
geom_label(data = . %>% filter(date == max(date)),
aes(x = date, y = values, label = round(values, 1), color = color))
Consumption
All
Code
namq_10_gdp %>%
filter(na_item == "P3",
s_adj == "NSA",
unit == "PD15_EUR",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("1996-01-01")]) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Consumption Deflator") +
scale_y_log10(breaks = seq(90, 200, 5)) +
geom_label_repel(data = . %>% filter(date == max(date)),
aes(x = date, y = values, label = round(values, 1), color = color))
1999-
Code
namq_10_gdp %>%
filter(na_item == "P3",
s_adj == "NSA",
unit == "PD15_EUR",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
filter(date >= as.Date("1999-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("1999-01-01")]) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_2flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Consumption Deflator") +
scale_y_log10(breaks = seq(90, 200, 5)) +
geom_label_repel(data = . %>% filter(date == max(date)),
aes(x = date, y = values, label = round(values, 1), color = color))
GDP, Consumption
Code
namq_10_gdp %>%
filter(na_item %in% c("P3", "B1GQ"),
s_adj == "NSA",
unit == "PD15_EUR",
geo %in% c("FR", "DE")) %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
left_join(na_item, by = "na_item") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("1996-01-01")]) %>%
ggplot + geom_line(aes(x = date, y = values, color = color, linetype = Na_item)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("GDP, Consumption Deflator") +
scale_y_log10(breaks = seq(90, 200, 5)) +
geom_label_repel(data = . %>% filter(date == max(date)),
aes(x = date, y = values, label = round(values, 1), color = color, linetype = Na_item))
Greece, Portugal, France, Germany
2021-
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD15_EUR",
geo %in% c("FR", "DE", "EL", "PT")) %>%
quarter_to_date %>%
filter(date >= as.Date("2021-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
group_by(Geo) %>%
mutate(values = 100*values/values[date == as.Date("2021-01-01")]) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("GDP Deflator") +
scale_y_log10(breaks = seq(90, 200, 2)) +
geom_label_repel(data = . %>% filter(date == max(date)),
aes(x = date, y = values, label = round(values, 1), color = color))
Germany, France, Euro Area, Italy, Spain
PD_PCH_SM_EUR
1996-
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD_PCH_SM_EUR",
geo %in% c("FR", "DE", "EA", "IT")) %>%
transmute(time, na_item, geo, values = values/100) %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
2010-
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD_PCH_SM_EUR",
geo %in% c("FR", "DE", "EA", "IT")) %>%
transmute(time, na_item, geo, values = values/100) %>%
quarter_to_date %>%
filter(date >= as.Date("2010-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("GDP Deflator, Annual % change") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
2018-
GDP
Code
namq_10_gdp %>%
filter(na_item == "B1GQ",
s_adj == "NSA",
unit == "PD_PCH_SM_EUR",
geo %in% c("FR", "DE", "EA", "IT", "ES")) %>%
transmute(time, na_item, geo, values = values/100) %>%
quarter_to_date %>%
filter(date >= as.Date("2018-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_5flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("GDP Deflator, Annual % change") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
P3 Consumption Deflator
Code
namq_10_gdp %>%
filter(na_item == "P3",
s_adj == "NSA",
unit == "PD_PCH_SM_EUR",
geo %in% c("FR", "DE", "EA", "IT", "ES")) %>%
transmute(time, na_item, geo, values = values/100) %>%
quarter_to_date %>%
filter(date >= as.Date("2018-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_5flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Consumption Deflator, Annual % change") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
P31_S14 Final consumption expenditure of households
Code
namq_10_gdp %>%
filter(na_item == "P31_S14",
s_adj == "NSA",
unit == "PD_PCH_SM_EUR",
geo %in% c("FR", "DE", "EA", "IT", "ES")) %>%
transmute(time, na_item, geo, values = values/100) %>%
quarter_to_date %>%
filter(date >= as.Date("2018-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Final consumption expenditure of households, Annual % change") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
P41 Actual Individual Consumption
Code
namq_10_gdp %>%
filter(na_item == "P41",
s_adj == "NSA",
unit == "PD_PCH_SM_EUR",
geo %in% c("FR", "DE", "EA", "IT", "ES")) %>%
transmute(time, na_item, geo, values = values/100) %>%
quarter_to_date %>%
filter(date >= as.Date("2018-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Actual Individual Consumption, Annual % change") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Net Exports of Goods
Table
Code
namq_10_gdp %>%
filter(na_item %in% c("P61", "P71"),
s_adj == "NSA",
unit == "PC_GDP",
time %in% c("1989Q4", "1999Q4", "2009Q4", "2019Q4", "2022Q2", "2022Q3")) %>%
select(time, na_item, geo, values) %>%
mutate(values = round(values, 1)) %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(NX = round(P61 - P71, 1)) %>%
select(-P61, -P71) %>%
spread(time, NX) %>%
arrange(`2022Q3`) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
Germany, France, Netherlands
1995-
Code
namq_10_gdp %>%
filter(na_item %in% c("P61", "P71"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "NL")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P61 - P71)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(color = ifelse(geo == "NL", color2, color)) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
add_3flags +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Germany, France, Eurozone, Italy
All
Code
namq_10_gdp %>%
filter(na_item %in% c("P61", "P71"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P61 - P71)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1990-
Code
namq_10_gdp %>%
filter(na_item %in% c("P61", "P71"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1990-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P61 - P71)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1995-
English
Code
namq_10_gdp %>%
filter(na_item %in% c("P61", "P71"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P61 - P71)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2030, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Français
Code
namq_10_gdp %>%
filter(na_item %in% c("P61", "P71"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P61 - P71)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2030, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Balance commerciale (% du PIB)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1996-
Code
namq_10_gdp %>%
filter(na_item %in% c("P61", "P71"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P61 - P71)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
France vs. Gemrany
Français
Code
namq_10_gdp %>%
filter(na_item %in% c("P61", "P71"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA19")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA19", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P61 - P71)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2030, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Balance commerciale (% du PIB)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Government Spending
Final consumption expenditure of general government
Code
namq_10_gdp %>%
filter(na_item %in% c("P3_S13"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "NL", "IT", "ES")) %>%
quarter_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")) %>%
mutate(color = ifelse(geo == "NL", color2, color)) %>%
mutate(values = values/100) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
add_5flags +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Government Consumption (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 100, 1),
labels = percent_format(a = 1))
Individual consumption expenditure of general government
Code
namq_10_gdp %>%
filter(na_item %in% c("P31_S13"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "NL", "IT", "ES")) %>%
quarter_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")) %>%
mutate(color = ifelse(geo == "NL", color2, color)) %>%
mutate(values = values/100) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
add_5flags +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Government Consumption (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 100, 1),
labels = percent_format(a = 1))
Collective consumption expenditure of general government
Code
namq_10_gdp %>%
filter(na_item %in% c("P32_S13"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "NL", "IT", "ES")) %>%
quarter_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")) %>%
mutate(color = ifelse(geo == "NL", color2, color)) %>%
mutate(values = values/100) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
add_5flags +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Government Consumption (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 100, 1),
labels = percent_format(a = 1))
Net Exports
Table
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
time %in% c("1989Q4", "1999Q4", "2009Q4", "2019Q4", "2022Q2", "2022Q3")) %>%
select(time, na_item, geo, values) %>%
mutate(values = round(values, 1)) %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(NX = round(P6 - P7, 1)) %>%
select(-P6, -P7) %>%
spread(time, NX) %>%
arrange(`2022Q3`) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
Germany, France, Netherlands
1995-
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "NL")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(color = ifelse(geo == "NL", color2, color)) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) +
add_3flags +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Germany, France, Eurozone, Italy
All
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1990-
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1990-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1995-
English
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Français
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Balance commerciale (% du PIB)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1996-
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_4flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Germany, France, Eurozone, Belgium
Table
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
time == "2023Q1") %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)) %>%
arrange(values) %>%
print_table_conditional
SCA
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA", "BE")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Germany, France, Eurozone
All
NSA - Unadjusted data (i.e. neither seasonally adjusted nor calendar adjusted data)
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
add_3flags +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
SCA
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
add_3flags +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1995-
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(color = ifelse(geo == "EA", color2, color)) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Exportations Nettes (% du PIB)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1996-
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(color = ifelse(geo == "EA", color2, color)) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
2000-
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("2000-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
2010-
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "EA")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
filter(date >= as.Date("2010-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = "none",
legend.title = element_blank()) +
xlab("") + ylab("Net Exports (% of GDP)") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Albania, Austria, Bosnia
Code
load_data("eurostat/geo.RData")
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("AL", "AT", "BA")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.25),
legend.title = element_blank()) +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 5),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Belgium, Bulgaria, Switzerland
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("BE", "BG", "CH")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.25),
legend.title = element_blank()) +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 5),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Cyprus, Czechia, Germany
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("CY", "CZ", "DE")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.25),
legend.title = element_blank()) +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 5),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Denmark, Greece, Spain
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("DK", "EL", "ES")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.95),
legend.title = element_blank(),
legend.direction = "horizontal") +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 5),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Finland, France, Croatia
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FI", "FR", "HR")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.95),
legend.title = element_blank(),
legend.direction = "horizontal") +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 5),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Hungary, Ireland, Iceland
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("HU", "IE", "IS")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.95),
legend.title = element_blank(),
legend.direction = "horizontal") +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 100, 5),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Italy, Lithuania, Luxembourg
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("IT", "LT", "LU")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.25, 0.95),
legend.title = element_blank(),
legend.direction = "horizontal") +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 100, 5),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Germany, France, Italy
NSA
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
SCA
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) + add_3flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Germany, France, Italy, Spain, Eurozone
SCA
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "SCA",
unit == "PC_GDP",
geo %in% c("FR", "DE", "IT", "EA", "ES")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
filter(date >= as.Date("1998-01-01")) %>%
mutate(Geo= ifelse(geo == "EA", "Europe", Geo)) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 2), "-01-01")),
labels = date_format("%Y")) + add_5flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Poland, France, Italy
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("PL", "DE", "IT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) + add_3flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 1),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Poland, Austria, Germany, Tchequia, Hungary, Slovakia
Code
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
geo %in% c("PL", "DE", "SK", "CZ", "HU", "AT")) %>%
select(time, na_item, geo, values) %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) + add_6flags +
theme(legend.position = c(0.85, 0.25),
legend.title = element_blank()) +
xlab("") + ylab("") +
scale_y_continuous(breaks = 0.01*seq(-30, 30, 5),
labels = percent_format(a = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Decompose GDP
Bn - 2019Q1 - France, Italy, Germany, Spain
Code
namq_10_gdp %>%
filter(s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
time %in% c("2019Q1"),
geo %in% c("FR", "IT", "DE", "ES")) %>%
left_join(na_item, by = "na_item") %>%
select(na_item, Na_item, geo, values) %>%
spread(geo, values) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
% of GDP - 2019Q1 - France, Italy, Germany, Spain
Code
namq_10_gdp %>%
filter(s_adj == "SCA",
unit == "PC_GDP",
time %in% c("2019Q1"),
geo %in% c("FR", "IT", "DE", "ES")) %>%
left_join(na_item, by = "na_item") %>%
select(na_item, Na_item, geo, values) %>%
mutate(values = values %>% paste0("%")) %>%
spread(geo, values) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
% - 2019Q1 - France, Italy, Germany, Spain
Code
namq_10_gdp %>%
filter(s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CP_MEUR",
time %in% c("2019Q1"),
geo %in% c("FR", "IT", "DE", "ES")) %>%
left_join(na_item, by = "na_item") %>%
select(na_item, Na_item, geo, values) %>%
group_by(geo) %>%
mutate(values = round(100*values/values[na_item == "B1GQ"], 1) %>% paste0("%")) %>%
spread(geo, values) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
France - 1979, 1989, 1999, 2009, 2019
Code
namq_10_gdp %>%
filter(s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CP_MEUR",
time %in% c("2019Q1", "2009Q1", "1999Q1", "1989Q1", "1979Q1"),
geo %in% c("FR")) %>%
left_join(na_item, by = "na_item") %>%
select(na_item, Na_item, time, values) %>%
group_by(time) %>%
mutate(values = round(100*values/values[na_item == "B1GQ"], 1) %>% paste0("%")) %>%
spread(time, values) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F) else .}
REAL Gross Domestic Product
Allemagne, France, Europe, Italy
1990-
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("1990-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 5), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(80, 180, 5),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
1995-
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("1995-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("1995-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 5), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(80, 180, 5),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
1996-
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("1996-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(80, 180, 5),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
2000-
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("2000-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("2000-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(80, 130, 5),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
2017-
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("2017-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("2017-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(date = zoo::as.yearqtr(paste0(year(date), " Q", quarter(date)))) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
zoo::scale_x_yearqtr(labels = date_format("%Y Q%q"),
breaks = seq(zoo::as.yearqtr("2017 Q1"), zoo::as.yearqtr("2100 Q1"), by = 0.25)) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank(),
axis.text.x = element_text(angle = 45, vjust = 1, hjust = 1)) +
scale_y_log10(breaks = seq(80, 130, 2),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
2019Q4-
Code
namq_10_gdp %>%
filter(geo %in% c("EA20", "DE", "IT", "FR", "IE"),
# B1GQ: Gross domestic product at market prices
na_item == "B1GQ",
time %in% c("2019Q4", "2023Q4"),
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV15_MEUR") %>%
left_join(geo, by = "geo") %>%
select(geo, Geo, values, time) %>%
mutate(values = values/1000) %>%
spread(time, values) %>%
mutate(Change = `2023Q4` - `2019Q4`) %>%
print_table_conditional
DE |
Germany |
830.0963 |
830.3344 |
0.2381 |
EA20 |
Euro area – 20 countries (from 2023) |
2886.6134 |
2993.4117 |
106.7983 |
FR |
France |
587.0123 |
606.3824 |
19.3701 |
IE |
Ireland |
89.4322 |
107.0898 |
17.6576 |
IT |
Italy |
431.4978 |
453.3909 |
21.8931 |
Allemagne, France, Italie
All
Code
namq_10_gdp %>%
filter(geo %in% c("FR", "DE", "IT"),
# B1GQ: Gross domestic product at market prices
na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
left_join(colors, by = c("Geo" = "country")) %>%
mutate(values = values/1000) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 1000, 100),
labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))
1995-
Code
namq_10_gdp %>%
filter(geo %in% c("FR", "DE", "IT"),
# B1GQ: Gross domestic product at market prices
na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_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) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") + add_3flags +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(0, 1000, 100),
labels = dollar_format(suffix = " Bn€", prefix = "", accuracy = 1))
2019Q4 to 2020Q1
Code
load_data("eurostat/geo.RData")
namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
time %in% c("2020Q1", "2019Q4")) %>%
left_join(geo, by = "geo") %>%
select(geo, Geo, time, values) %>%
spread(time, values) %>%
transmute(geo, Geo,
`growth (%)` = round(100*(`2020Q1`/`2019Q4` - 1), 1)) %>%
mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F) else .}
2019Q4 to 2020Q1 to 2021Q4
Code
load_data("eurostat/geo.RData")
namq_10_gdp %>%
filter(na_item == "B1GQ",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR",
time %in% c("2020Q1", "2019Q4", "2021Q4"),
!(geo %in% c("EA", "EA19"))) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA", "Eurozone", Geo),
Geo = ifelse(geo == "EU27_2020", "Europe", Geo)) %>%
select(geo, Geo, time, values) %>%
spread(time, values) %>%
transmute(geo, Geo,
`2020-Q1 (%)` = round(100*(`2020Q1`/`2019Q4` - 1), 1),
`2021Q4 (%)` = round(100*(`2021Q4`/`2019Q4` - 1), 1)) %>%
filter(!is.na(`2021Q4 (%)`)) %>%
arrange(`2021Q4 (%)`) %>%
mutate(Geo = ifelse(geo == "DE", "Germany", Geo)) %>%
mutate(Flag = gsub(" ", "-", str_to_lower(Geo)),
Flag = paste0('<img src="../../icon/flag/vsmall/', Flag, '.png" alt="Flag">')) %>%
select(Flag, everything()) %>%
{if (is_html_output()) datatable(., filter = 'top', rownames = F, escape = F, options = list(pageLength = 40)) else .}
Maps: 2008 Current Accounts in Europe (% of GDP)
Code
load_data("eurostat/geo.RData")
namq_10_gdp %>%
filter(na_item %in% c("P6", "P7"),
s_adj == "NSA",
unit == "PC_GDP",
time == "2019Q4") %>%
select(na_item, geo, values) %>%
spread(na_item, values) %>%
mutate(values = (P6 - P7)/100) %>%
left_join(geo, by = "geo") %>%
rename(region = Geo) %>%
right_join(eurozone %>%
mutate(region = case_when(region == "UK" ~ "United Kingdom",
region == "Slovakia" ~ "Slovak Republic",
TRUE ~ region)),
by = "region") %>%
ggplot(., aes(x = long, y = lat, group = group, fill = values)) +
geom_polygon() + coord_map() +
scale_fill_viridis_c(na.value = "white",
labels = scales::percent_format(accuracy = 1, suffix = "% of GDP"),
breaks = c(-0.16,-0.12,-0.08,-0.04, 0, 0.04, 0.08, 0.12, 0.16),
values = c(0, 0.1, 0.2, 0.3, 0.4, 0.5, 0.6, 0.7, 0.8, 1)) +
theme_void() +
theme(legend.position = c(0.05, 0.55)) +
labs(fill = "2019Q4 Current Account")
Consumption
Germany, France, Europe, Italy
All
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "P3",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CP_MEUR") %>%
quarter_to_date %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("1996-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 400, 20),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
1996-
Value
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "P3",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CP_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("1996-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 400, 20),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
Volume
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "P3",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CLV10_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("1996-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("1996-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 2), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 400, 5),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
2000-
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "P3",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CP_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("2000-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("2000-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2100, 5), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(100, 400, 20),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
2015-
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "P3",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CP_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("2015-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("2015-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(80, 400, 2),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
2017-
Code
namq_10_gdp %>%
filter(geo %in% c("EA19", "DE", "IT", "FR"),
# B1GQ: Gross domestic product at market prices
na_item == "P3",
# SCA: Seasonally and calendar adjusted data
s_adj == "SCA",
# CLV10_MEUR: Chain linked volumes (2010), million euro
unit == "CP_MEUR") %>%
quarter_to_date %>%
filter(date >= as.Date("2017-01-01")) %>%
left_join(geo, by = "geo") %>%
mutate(Geo = ifelse(geo == "EA19", "Europe", Geo)) %>%
group_by(geo) %>%
mutate(values = 100*values / values[date == as.Date("2017-01-01")]) %>%
left_join(colors, by = c("Geo" = "country")) %>%
ggplot + geom_line(aes(x = date, y = values, color = color)) +
scale_color_identity() + theme_minimal() + xlab("") + ylab("") +
scale_x_date(breaks = as.Date(paste0(seq(1960, 2026, 1), "-01-01")),
labels = date_format("%Y")) +
add_4flags +
theme(legend.position = c(0.35, 0.85),
legend.title = element_blank()) +
scale_y_log10(breaks = seq(80, 400, 5),
labels = dollar_format(suffix = "", prefix = "", accuracy = 1))
Import Price index
Table
Code
namq_10_gdp %>%
filter(na_item == "P7",
unit == "PD15_EUR",
time %in% c("2022Q1", "2021Q4")) %>%
spread(time, values) %>%
select_if(~ n_distinct(.) > 1) %>%
mutate(`growth` = 100*( `2022Q1`/`2021Q4`-1 )) %>%
arrange(-`growth`) %>%
left_join(geo, by = "geo") %>%
select(geo, Geo, everything()) %>%
print_table_conditional
Last observation, Eurozone
Code
namq_10_gdp %>%
filter(time == max(time),
na_item == "B1GQ") %>%
spread(unit, values) %>%
select_if(~ n_distinct(.) > 1) %>%
left_join(geo, by = "geo") %>%
select(geo, Geo, everything()) %>%
print_table_conditional
FR |
France |
CA |
126.458 |
120.697 |
114.144 |
115.617 |
NA |
NA |
0.9 |
556577.1 |
556577.1 |
601676.0 |
601676.0 |
628553.2 |
628553.2 |
669749.6 |
669749.6 |
NA |
0.88 |
758735.1 |
758735.1 |
100 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
736879.0 |
736879.0 |
LT |
Lithuania |
CA |
176.275 |
168.796 |
136.912 |
116.019 |
NA |
NA |
3.7 |
9246.6 |
9246.6 |
11670.2 |
11670.2 |
12816.1 |
12816.1 |
14575.6 |
14575.6 |
NA |
3.68 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
SE |
Sweden |
CA |
147.820 |
136.369 |
122.542 |
114.965 |
NA |
NA |
1.1 |
116308.0 |
1079594.1 |
126710.4 |
1208475.0 |
138602.7 |
1296420.0 |
137517.8 |
1441846.8 |
NA |
1.12 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
DE |
Germany |
NSA |
124.736 |
117.593 |
108.185 |
105.143 |
NA |
NA |
-0.4 |
725249.6 |
725249.6 |
769076.6 |
769076.6 |
834555.9 |
834555.9 |
906732.6 |
906732.6 |
NA |
NA |
1101420.0 |
1101420.0 |
100 |
NA |
NA |
2.5 |
2.5 |
151.868 |
151.868 |
143.213 |
143.213 |
131.977 |
131.977 |
121.471 |
121.471 |
1049664.0 |
1049664.0 |
EE |
Estonia |
NSA |
143.956 |
146.931 |
123.011 |
108.130 |
NA |
NA |
-0.1 |
4083.1 |
4083.1 |
5415.1 |
5415.1 |
6461.4 |
6461.4 |
7531.1 |
7531.1 |
NA |
-0.08 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
ES |
Spain |
NSA |
128.430 |
122.836 |
122.219 |
124.126 |
NA |
NA |
3.3 |
297997.1 |
297997.1 |
330779.3 |
330779.3 |
332164.8 |
332164.8 |
350413.0 |
350413.0 |
NA |
3.27 |
420897.0 |
420897.0 |
100 |
NA |
NA |
2.9 |
2.9 |
141.242 |
141.242 |
127.244 |
127.244 |
126.713 |
126.713 |
120.115 |
120.115 |
399767.0 |
399767.0 |
FR |
France |
NSA |
126.174 |
120.415 |
114.057 |
115.403 |
NA |
NA |
0.9 |
555811.1 |
555811.1 |
600893.4 |
600893.4 |
627712.2 |
627712.2 |
668842.9 |
668842.9 |
NA |
0.95 |
757694.4 |
757694.4 |
100 |
NA |
NA |
1.3 |
1.3 |
136.322 |
136.322 |
126.095 |
126.095 |
120.707 |
120.707 |
113.284 |
113.284 |
735881.5 |
735881.5 |
IE |
Ireland |
NSA |
241.433 |
236.907 |
168.058 |
124.630 |
NA |
NA |
6.3 |
102794.3 |
102794.3 |
99172.8 |
99172.8 |
114508.1 |
114508.1 |
119086.6 |
119086.6 |
NA |
6.27 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
LT |
Lithuania |
NSA |
176.692 |
168.797 |
136.981 |
116.075 |
NA |
NA |
3.8 |
9270.1 |
9270.1 |
11673.7 |
11673.7 |
12821.7 |
12821.7 |
14586.1 |
14586.1 |
NA |
3.77 |
20245.9 |
20245.9 |
100 |
NA |
NA |
1.2 |
1.2 |
218.399 |
218.399 |
173.431 |
173.431 |
157.903 |
157.903 |
138.803 |
138.803 |
19564.3 |
19564.3 |
SE |
Sweden |
NSA |
146.764 |
135.400 |
122.006 |
114.319 |
NA |
NA |
0.6 |
115705.4 |
1074000.8 |
126052.1 |
1202197.1 |
137996.5 |
1290750.0 |
136862.9 |
1434979.6 |
NA |
0.60 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
FR |
France |
SA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
735357.6 |
735357.6 |
100 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
AT |
Austria |
SCA |
124.641 |
116.832 |
110.578 |
108.509 |
-0.1 |
0.0 |
-0.2 |
78621.7 |
78621.7 |
85786.2 |
85786.2 |
94503.5 |
94503.5 |
102931.8 |
102931.8 |
-0.02 |
-0.20 |
122035.7 |
122035.7 |
100 |
1.3 |
1.3 |
3.0 |
3.0 |
155.219 |
155.219 |
142.256 |
142.256 |
129.133 |
129.133 |
118.560 |
118.560 |
NA |
NA |
BE |
Belgium |
SCA |
NA |
NA |
NA |
NA |
NA |
0.2 |
1.1 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
CZ |
Czechia |
SCA |
144.891 |
128.399 |
118.370 |
108.801 |
1.9 |
0.5 |
1.6 |
39959.2 |
1190063.7 |
51153.1 |
1293354.7 |
50485.1 |
1377183.7 |
59942.0 |
1585766.0 |
0.48 |
1.61 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
DE |
Germany |
SCA |
124.087 |
117.061 |
107.567 |
104.662 |
-0.8 |
-0.2 |
-0.2 |
720478.4 |
720478.4 |
764001.2 |
764001.2 |
829044.6 |
829044.6 |
900760.5 |
900760.5 |
NA |
NA |
1087972.0 |
1087972.0 |
100 |
1.1 |
1.1 |
2.4 |
2.4 |
151.007 |
151.007 |
142.404 |
142.404 |
131.232 |
131.232 |
120.784 |
120.784 |
NA |
NA |
EA |
Euro area (EA11-1999, EA12-2001, EA13-2007, EA15-2008, EA16-2009, EA17-2011, EA18-2014, EA19-2015, EA20-2023) |
SCA |
123.095 |
118.197 |
113.383 |
111.728 |
0.1 |
0.0 |
0.9 |
2620997.3 |
2620997.3 |
2847692.5 |
2847692.5 |
3021187.5 |
3021187.5 |
3241711.6 |
3241711.6 |
0.03 |
0.93 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
EA12 |
Euro area - 12 countries (2001-2006) |
SCA |
122.310 |
117.586 |
112.949 |
111.599 |
0.1 |
0.0 |
0.9 |
2552087.6 |
2552087.6 |
2763275.8 |
2763275.8 |
2932065.3 |
2932065.3 |
3144260.2 |
3144260.2 |
0.02 |
0.90 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
EA19 |
Euro area - 19 countries (2015-2022) |
SCA |
123.025 |
118.124 |
113.287 |
111.645 |
0.1 |
0.0 |
0.9 |
2608176.9 |
2608176.9 |
2832356.9 |
2832356.9 |
3005757.1 |
3005757.1 |
3225158.3 |
3225158.3 |
0.03 |
0.92 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
EA20 |
Euro area – 20 countries (from 2023) |
SCA |
123.095 |
118.197 |
113.383 |
111.728 |
0.1 |
0.0 |
0.9 |
2620997.3 |
2620997.3 |
2847692.5 |
2847692.5 |
3021187.5 |
3021187.5 |
3241711.6 |
3241711.6 |
0.03 |
0.93 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
EE |
Estonia |
SCA |
137.595 |
139.768 |
117.123 |
103.027 |
0.2 |
0.1 |
-0.1 |
3899.4 |
3899.4 |
5150.1 |
5150.1 |
6149.9 |
6149.9 |
7182.3 |
7182.3 |
0.06 |
-0.08 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
ES |
Spain |
SCA |
125.707 |
120.231 |
119.627 |
121.494 |
3.1 |
0.8 |
3.5 |
291677.7 |
291677.7 |
323764.9 |
323764.9 |
325121.0 |
325121.0 |
342982.0 |
342982.0 |
0.75 |
3.49 |
407457.0 |
407457.0 |
100 |
1.1 |
1.1 |
2.3 |
2.3 |
139.694 |
139.694 |
125.850 |
125.850 |
125.325 |
125.325 |
118.798 |
118.798 |
391289.0 |
391289.0 |
EU27_2020 |
European Union - 27 countries (from 2020) |
SCA |
127.114 |
121.082 |
115.114 |
111.933 |
0.5 |
0.1 |
1.1 |
3049697.2 |
3049697.2 |
3341343.8 |
3341343.8 |
3541091.1 |
3541091.1 |
3797491.6 |
3797491.6 |
0.13 |
1.05 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
FR |
France |
SCA |
122.801 |
117.207 |
110.843 |
112.274 |
-0.3 |
-0.1 |
0.7 |
540482.3 |
540482.3 |
584277.1 |
584277.1 |
610377.0 |
610377.0 |
650382.1 |
650382.1 |
-0.08 |
0.66 |
736398.3 |
736398.3 |
100 |
0.4 |
0.4 |
1.6 |
1.6 |
136.248 |
136.248 |
126.036 |
126.036 |
120.646 |
120.646 |
113.225 |
113.225 |
715570.3 |
715570.3 |
HU |
Hungary |
SCA |
139.032 |
140.068 |
126.160 |
111.443 |
2.1 |
0.5 |
0.2 |
31629.7 |
7845751.6 |
34863.8 |
9604287.4 |
35594.2 |
11034190.0 |
38713.9 |
13598253.0 |
0.53 |
0.19 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
IE |
Ireland |
SCA |
224.532 |
223.945 |
161.317 |
118.684 |
-5.0 |
-1.3 |
2.5 |
95565.3 |
95565.3 |
93632.1 |
93632.1 |
109817.2 |
109817.2 |
113617.2 |
113617.2 |
-1.27 |
2.55 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
IT |
Italy |
SCA |
103.917 |
105.935 |
109.596 |
115.520 |
-0.1 |
0.0 |
0.5 |
390014.3 |
390014.3 |
428258.7 |
428258.7 |
455644.4 |
455644.4 |
481963.9 |
481963.9 |
-0.01 |
0.50 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
LT |
Lithuania |
SCA |
172.897 |
165.562 |
134.289 |
113.796 |
3.5 |
0.9 |
3.6 |
9069.4 |
9069.4 |
11446.6 |
11446.6 |
12570.5 |
12570.5 |
14296.3 |
14296.3 |
0.87 |
3.55 |
19761.6 |
19761.6 |
100 |
-0.9 |
-0.9 |
2.2 |
2.2 |
217.892 |
217.892 |
172.642 |
172.642 |
157.207 |
157.207 |
138.229 |
138.229 |
NA |
NA |
PT |
Portugal |
SCA |
NA |
NA |
NA |
NA |
NA |
1.5 |
2.7 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
1.48 |
2.70 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
SE |
Sweden |
SCA |
139.401 |
128.599 |
115.595 |
108.385 |
0.8 |
0.2 |
1.2 |
109664.2 |
1017924.6 |
119431.4 |
1139053.3 |
130690.1 |
1222410.2 |
129721.8 |
1360107.0 |
0.20 |
1.20 |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |
NA |