Policy Rates, Monthly

Data - BIS

Info

source dataset .html .RData

bis

CBPOL_M

2024-06-19 2024-04-19

Data on interest rates

source dataset .html .RData

bdf

FM

2024-07-01 2024-06-18

bdf

MIR

2024-07-01 2024-07-01

bdf

MIR1

2024-07-01 2024-07-01

bis

CBPOL_D

2024-07-01 2024-05-10

bis

CBPOL_M

2024-06-19 2024-04-19

ecb

FM

2024-07-01 2024-07-01

ecb

MIR

2024-06-19 2024-07-01

eurostat

ei_mfir_m

2024-07-01 2024-06-30

eurostat

irt_lt_mcby_d

2024-07-01 2024-06-08

eurostat

irt_st_m

2024-07-01 2024-07-01

fred

r

2024-07-01 2024-07-01

oecd

MEI

2024-04-16 2024-06-30

oecd

MEI_FIN

2024-07-01 2024-05-21

wdi

FR.INR.RINR

2024-01-06 2024-04-14

Data on monetary policy

source dataset .html .RData

bdf

FM

2024-07-01 2024-06-18

bdf

MIR

2024-07-01 2024-07-01

bdf

MIR1

2024-07-01 2024-07-01

bis

CBPOL

2024-06-19 2024-07-01

ecb

BSI

2024-07-01 2024-05-21

ecb

BSI_PUB

2024-07-01 2024-07-01

ecb

FM

2024-07-01 2024-07-01

ecb

ILM

2024-07-01 2024-07-01

ecb

ILM_PUB

2024-07-01 2024-01-25

ecb

liq_daily

2024-07-01 2024-05-21

ecb

MIR

2024-06-19 2024-07-01

ecb

RAI

2024-06-07 2024-07-01

ecb

SUP

2024-06-30 2024-07-01

ecb

YC

2024-06-30 2024-05-21

ecb

YC_PUB

2024-06-30 2024-07-01

eurostat

ei_mfir_m

2024-07-01 2024-06-30

eurostat

irt_st_m

2024-07-01 2024-07-01

fred

r

2024-07-01 2024-07-01

oecd

MEI

2024-04-16 2024-06-30

oecd

MEI_FIN

2024-07-01 2024-05-21

LAST_COMPILE

LAST_COMPILE
2024-07-02

Last

date Nobs
2024-03-01 34

REF_AREA

Code
CBPOL_M %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  group_by(REF_AREA, Ref_area) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  mutate(Flag = gsub(" ", "-", str_to_lower(Ref_area)),
         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 .}

FREQ

Code
CBPOL_M %>%
  left_join(FREQ, by = "FREQ") %>%
  group_by(FREQ, Freq) %>%
  summarise(Nobs = n()) %>%
  arrange(-Nobs) %>%
  {if (is_html_output()) print_table(.) else .}
FREQ Freq Nobs
M Monthly 22535

Individual Countries

Hungary

1990-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("HU"),
         date >= as.Date("2000-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2010-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("HU"),
         date >= as.Date("2010-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Poland

1990-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("PL"),
         date >= as.Date("2000-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2010-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("PL"),
         date >= as.Date("2010-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Brazil

1990-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("BR"),
         date >= as.Date("2000-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2010-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("BR"),
         date >= as.Date("2010-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Iceland

All

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("IS")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2014-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("IS"),
         date >= as.Date("2014-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

New Zealand

All

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("NZ")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

1980-2000

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("NZ"),
         date >= as.Date("1980-01-01"),
         date <= as.Date("2000-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2014-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("NZ"),
         date >= as.Date("2014-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 1) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Israel

All

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("IL")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

All - Stanley Fischer

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("IL")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank()) + 
    geom_rect(data = data_frame(start = as.Date("2005-05-01"), 
                                end = as.Date("2013-06-30")), 
              aes(xmin = start, xmax = end, ymin = -Inf, ymax = +Inf), 
              fill = viridis(4)[4], alpha = 0.2)

2004-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("IL"),
         date >= as.Date("2004-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2020, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2004- Stanley Fischer

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("IL"),
         date >= as.Date("2004-01-01")) %>%
  ggplot(.) + geom_line(aes(x = date, y = OBS_VALUE/100)) + 
  theme_minimal() + xlab("") + ylab("") +
  scale_x_date(breaks = seq(1940, 2020, 2) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  scale_color_manual(values = viridis(4)[1:3]) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank()) + 
    geom_rect(data = data_frame(start = as.Date("2005-05-01"), 
                                end = as.Date("2013-06-30")), 
              aes(xmin = start, xmax = end, ymin = -Inf, ymax = +Inf), 
              fill = viridis(4)[4], alpha = 0.2)

3 Countries

United States, Japan, Euro Area (1980-)

1980-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("US", "JP", "XM"),
         date >= as.Date("1980-01-01")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  mutate(Ref_area = ifelse(REF_AREA == "XM", "Europe", Ref_area)) %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 30, 1),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

1985-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("US", "JP", "XM"),
         date >= as.Date("1985-01-01")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  mutate(Ref_area = ifelse(REF_AREA == "XM", "Europe", Ref_area)) %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 30, 1),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Switzerland, Denmark, United Kingdom

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("CH", "DK", "GB")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 30, 1),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

India

All

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("IN")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 30, 1),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Sweden, India, United States

All

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("SE", "IN", "US")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 30, 1),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

1993-

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("SE", "IN", "US"),
         date >= as.Date("1993-01-01")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 30, 1),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Japan, Canada, Australia

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("JP", "CA", "AU")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 100, 5),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

South Africa, New Zealand, Norway

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("ZA", "NZ", "NO")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 100, 5),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Brazil, Philippines, Hungary

All

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("BR", "PH", "HU")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 100, 5),
                labels = percent_format(accuracy = 1),
                limits = c(-0.05, 0.40)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

2000

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("BR", "PH", "HU"),
         date >= as.Date("1998-01-01")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(-5, 100, 5),
                labels = percent_format(accuracy = 1),
                limits = c(-0.05, 0.40)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Russia, Poland, Argentina

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("RU", "PL", "AR")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 50),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Israel, Colombia, Croatia

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("IL", "CO", "HR")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 50),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Malaysia, Czech Republic, China

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("MY", "CZ", "CN")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 1),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Serbia, Chile, Iceland

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("RS", "CL", "IS")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 5),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

Hong Kong, Mexico, Euro Area

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("HK", "MX", "XM")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  mutate(Ref_area = ifelse(REF_AREA == "XM", "Europe", Ref_area)) %>%
  mutate(Ref_area = ifelse(REF_AREA == "HK", "Hong Kong", Ref_area)) %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 5),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())

South Korea, North Macedonia, Saudi Arabia

Code
CBPOL_M %>%
  filter(REF_AREA %in% c("KR", "MK", "SA")) %>%
  left_join(REF_AREA, by = "REF_AREA") %>%
  left_join(colors, by = c("Ref_area" = "country")) %>%
  ggplot(.) + theme_minimal() + xlab("") + ylab("Policy Rates (%)") +
  geom_line(aes(x = date, y = OBS_VALUE/100, color = color)) + 
  scale_color_identity() + add_flags +
  scale_x_date(breaks = seq(1940, 2100, 5) %>% paste0("-01-01") %>% as.Date,
               labels = date_format("%Y")) +
  scale_y_continuous(breaks = 0.01*seq(0, 10000, 5),
                labels = percent_format(accuracy = 1)) +
  theme(legend.position = c(0.8, 0.80),
        legend.title = element_blank())