Balance of Payments BPM6 - MEI_BOP6
Data - OECD
Last observation: Q4 2023 (N = 7) · sept. 2023 (N = 56) · 2023 (N = 6)
First observation: 1955 (N = 32) · Q1 1955 (N = 32) · janv. 1980 (N = 56)
Last data update: 02 août 2026, 09:00
Last compile: 02 sept. 2026, 23:30
Structure
Layout - By country
- OECD Website. html

Nobs - Javascript
Code
MEI_BOP6 |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") %>%
{if (!is_html_output()) mutate(., Subject = substr(Subject, 1, 87)) else .} |>
group_by(SUBJECT, Subject, MEASURE, FREQUENCY) |>
filter(!is.na(obsValue)) |>
summarise(Nobs = n()) |>
arrange(-Nobs) |>
print_table_conditional()SUBJECT
All
Code
MEI_BOP6 |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(SUBJECT, Subject) |>
summarise(Nobs = n()) |>
arrange(-Nobs) |>
print_table_conditional()China
Code
MEI_BOP6 |>
filter(LOCATION == "CHN") |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(SUBJECT, Subject) |>
summarise(Nobs = n()) |>
arrange(-Nobs) |>
print_table_conditional()obsTime
Code
MEI_BOP6 |>
group_by(obsTime) |>
summarise(Nobs = n()) |>
arrange(desc(obsTime)) |>
print_table_conditional()Example
CA (% of GDP)
US, Europe, France, Germany
1990-
Code
MEI_BOP6 |>
filter(SUBJECT == "B6BLTT02",
LOCATION %in% c("FRA", "DEU", "USA", "EA20"),
FREQUENCY == "Q") |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
mutate(obsValue = obsValue / 100) |>
ggplot() + ylab("Current Account (% of GDP)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = obsValue, color = Location, linetype = Location)) +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(-7, 16, 1),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
1999-
Code
MEI_BOP6 |>
filter(SUBJECT == "B6BLTT02",
LOCATION %in% c("FRA", "DEU", "USA", "EA20"),
FREQUENCY == "Q") |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1999) |>
mutate(obsValue = obsValue / 100) |>
mutate(Location = ifelse(LOCATION == "EA20", "Europe", Location)) |>
add_flag_color("Location") |>
ggplot() + ylab("Current Account (% of GDP)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = obsValue, color = color)) +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.9),
legend.title = element_blank()) +
scale_color_identity() + add_4flags +
scale_y_continuous(breaks = 0.01*seq(-7, 16, 1),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Belgium, Greece, Netherlands
Annual
Code
MEI_BOP6 |>
filter(SUBJECT == "B6BLTT02",
LOCATION %in% c("BEL", "GRC", "NLD"),
FREQUENCY == "A") |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
year_to_date() |>
filter(year(date) >= 1990) |>
ggplot() + ylab("Current Account (% of GDP)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = obsValue / 100, color = Location, linetype = Location)) +
scale_color_manual(values = viridis(4)[1:3]) +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(-7, 16, 1),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
France and Germany
Annual
Code
MEI_BOP6 |>
filter(SUBJECT == "B6BLTT02",
LOCATION %in% c("FRA", "DEU"),
FREQUENCY == "A") |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
year_to_date() |>
filter(year(date) >= 1990) |>
ggplot() + ylab("Current Account (% of GDP)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = obsValue / 100, color = Location, linetype = Location)) +
scale_color_manual(values = viridis(3)[1:2]) +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(-7, 16, 1),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Quarterly
Code
MEI_BOP6 |>
filter(SUBJECT == "B6BLTT02",
LOCATION %in% c("FRA", "DEU"),
FREQUENCY == "Q") |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
quarter_to_date() |>
filter(year(date) >= 1990) |>
ggplot() + ylab("Current Account (% of GDP)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = obsValue / 100, color = Location, linetype = Location)) +
scale_color_manual(values = viridis(3)[1:2]) +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(-7, 16, 1),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Netherlands, Denmark, Italy
Code
MEI_BOP6 |>
filter(SUBJECT == "B6BLTT02",
LOCATION %in% c("NLD", "DNK", "ITA"),
FREQUENCY == "A") |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
year_to_date() |>
filter(year(date) >= 1990) |>
ggplot() + ylab("Current Account (% of GDP)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = obsValue/100, color = Location, linetype = Location)) +
scale_color_manual(values = viridis(4)[1:3]) +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(-7, 16, 1),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Australia, Japan, Switzerland
Code
MEI_BOP6 |>
filter(SUBJECT == "B6BLTT02",
LOCATION %in% c("AUS", "CHE", "JPN"),
FREQUENCY == "A") |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
year_to_date() |>
filter(year(date) >= 1990) |>
ggplot() + ylab("Current Account (% of GDP)") + xlab("") + theme_minimal() +
geom_line(aes(x = date, y = obsValue/100, color = Location, linetype = Location)) +
scale_color_manual(values = viridis(4)[1:3]) +
scale_x_date(breaks = seq(1920, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
theme(legend.position = c(0.2, 0.9),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(-7, 16, 1),
labels = scales::percent_format(accuracy = 1)) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Current Account Balance
France, Germany, Italy
Code
MEI_BOP6 |>
filter(LOCATION %in% c("FRA", "DEU", "ITA"),
# B6BLTT01: Balance of payments BPM6 > Current account Balance > Total > Total Balance
SUBJECT == "B6BLTT01",
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
group_by(LOCATION) |>
ggplot() +
geom_line(aes(x = date, y = obsValue/10^3, color = Location, linetype = Location)) +
theme_minimal() + scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8)) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
xlab("") + ylab("Current account Balance, Total") +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Netherlands, Switzerland, Sweden
Code
MEI_BOP6 |>
filter(LOCATION %in% c("NLD", "SWE", "CHE"),
# B6BLTT01: Balance of payments BPM6 > Current account Balance > Total > Total Balance
SUBJECT == "B6BLTT01",
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$LOCATION, by = "LOCATION") |>
group_by(LOCATION) |>
ggplot() +
geom_line(aes(x = date, y = obsValue/10^3, color = Location, linetype = Location)) +
theme_minimal() + scale_color_manual(values = viridis(4)[1:3]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8)) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
xlab("") + ylab("Current account Balance, Total") +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
CA Decompositions - ALL
Germany
Code
MEI_BOP6 |>
filter(LOCATION %in% c("DEU"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLTT01", "B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
France
Code
MEI_BOP6 |>
filter(LOCATION %in% c("FRA"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLTT01", "B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.15),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
United States
Code
MEI_BOP6 |>
filter(LOCATION %in% c("USA"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLTT01", "B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(6)[1:5]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.2),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Capital Account Decompositions
Germany
Code
MEI_BOP6 |>
filter(LOCATION %in% c("DEU"),
# B6FADI01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
MEASURE == "CXCU",
# CXCUSA: US Dollars, sum over component sub-periods, s.a
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Euro Area
Code
MEI_BOP6 |>
filter(LOCATION %in% c("EA20"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 20),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
China
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CHN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
United Kingdom
Code
MEI_BOP6 |>
filter(LOCATION %in% c("GBR"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
South Korea
Code
MEI_BOP6 |>
filter(LOCATION %in% c("KOR"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Sweden
Code
MEI_BOP6 |>
filter(LOCATION %in% c("SWE"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
New Zealand
Code
MEI_BOP6 |>
filter(LOCATION %in% c("NZL"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.2),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Canada
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CAN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Australia
All
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUS"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
2010
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUS"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
filter(date >= as.Date("2010-01-01")) |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
France
Code
MEI_BOP6 |>
filter(LOCATION %in% c("FRA"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
United States
Code
MEI_BOP6 |>
filter(LOCATION %in% c("USA"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.3),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 20),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Poland
Code
MEI_BOP6 |>
filter(LOCATION %in% c("POL"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Czech Republic
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CZE"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.3),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Hungary
Code
MEI_BOP6 |>
filter(LOCATION %in% c("HUN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Portugal
Code
MEI_BOP6 |>
filter(LOCATION %in% c("PRT"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Austria
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUT"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Capital Account Decompositions - Annual
Germany
Code
MEI_BOP6 |>
filter(LOCATION %in% c("DEU"),
# B6FADI01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
MEASURE == "CXCU",
# CXCUSA: US Dollars, sum over component sub-periods, s.a
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Euro Area
Code
MEI_BOP6 |>
filter(LOCATION %in% c("EA20"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
China
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CHN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
United Kingdom
Code
MEI_BOP6 |>
filter(LOCATION %in% c("GBR"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
South Korea
Code
MEI_BOP6 |>
filter(LOCATION %in% c("KOR"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Sweden
Code
MEI_BOP6 |>
filter(LOCATION %in% c("SWE"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 20),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
New Zealand
Code
MEI_BOP6 |>
filter(LOCATION %in% c("NZL"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.2),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Canada
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CAN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 20),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Australia
All
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUS"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
2010
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUS"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
filter(date >= as.Date("2010-01-01")) |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
France
Code
MEI_BOP6 |>
filter(LOCATION %in% c("FRA"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
United States
Code
MEI_BOP6 |>
filter(LOCATION %in% c("USA"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.3),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Poland
Code
MEI_BOP6 |>
filter(LOCATION %in% c("POL"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Czech Republic
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CZE"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.3),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Hungary
Code
MEI_BOP6 |>
filter(LOCATION %in% c("HUN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Portugal
Code
MEI_BOP6 |>
filter(LOCATION %in% c("PRT"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Austria
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUT"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6FADI01", "B6FAPI10", "B6FAOI01", "B6FATT01"),
# CXCU: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCU",
FREQUENCY == "A") |>
year_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Current Account Decompositions
Germany
Code
MEI_BOP6 |>
filter(LOCATION %in% c("DEU"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Euro Area
Code
MEI_BOP6 |>
filter(LOCATION %in% c("EA20"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 20),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
China
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CHN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 50),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
United Kingdom
Code
MEI_BOP6 |>
filter(LOCATION %in% c("GBR"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
South Korea
Code
MEI_BOP6 |>
filter(LOCATION %in% c("KOR"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Sweden
Code
MEI_BOP6 |>
filter(LOCATION %in% c("SWE"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
New Zealand
Code
MEI_BOP6 |>
filter(LOCATION %in% c("NZL"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.2),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Canada
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CAN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Australia
All
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUS"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 10),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
2010
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUS"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
filter(date >= as.Date("2010-01-01")) |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 1) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
France
Code
MEI_BOP6 |>
filter(LOCATION %in% c("FRA"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
United States
Code
MEI_BOP6 |>
filter(LOCATION %in% c("USA"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.3),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 20),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Poland
Code
MEI_BOP6 |>
filter(LOCATION %in% c("POL"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 5),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Czech Republic
Code
MEI_BOP6 |>
filter(LOCATION %in% c("CZE"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.3),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Hungary
Code
MEI_BOP6 |>
filter(LOCATION %in% c("HUN"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 5) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Portugal
Code
MEI_BOP6 |>
filter(LOCATION %in% c("PRT"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.9),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")
Austria
Code
MEI_BOP6 |>
filter(LOCATION %in% c("AUT"),
# B6BLTT01: Current account, balance
# B6BLPI01: Primary income, balance
# B6BLSI01: Secondary income, balance
SUBJECT %in% c("B6BLPI01", "B6BLSI01", "B6BLTD01", "B6BLSE01"),
# CXCUSA: US Dollars, sum over component sub-periods, s.a
MEASURE == "CXCUSA",
FREQUENCY == "Q") |>
quarter_to_date() |>
left_join(MEI_BOP6_var$SUBJECT, by = "SUBJECT") |>
group_by(LOCATION) |>
ggplot() + xlab("") + ylab("Current account Balance Component, Total") +
geom_line(aes(x = date, y = obsValue/10^3, color = Subject)) +
theme_minimal() + scale_color_manual(values = viridis(5)[1:4]) +
theme(legend.title = element_blank(),
legend.position = c(0.2, 0.8),
legend.text = element_text(size = 8),
legend.key.size = unit(0.9, 'lines')) +
scale_x_date(breaks = seq(1950, 2100, 2) |> paste0("-01-01") |> as.Date(),
labels = date_format("%Y")) +
scale_y_continuous(breaks = seq(-20000, 400000, 1),
labels = dollar_format(accuracy = 1, suffix = " Bn", prefix = "$ ")) +
geom_hline(yintercept = 0, linetype = "dashed", color = "black")