Code
TABLE_III1_var %>%
pluck("SCHED") %>%
{if (is_html_output()) print_table(.) else .}| id | label |
|---|---|
| SCHED_01 | 1 |
| SCHED_02 | 2 |
| SCHED_03 | 3 |
Data - OECD
TABLE_III1_var %>%
pluck("SCHED") %>%
{if (is_html_output()) print_table(.) else .}| id | label |
|---|---|
| SCHED_01 | 1 |
| SCHED_02 | 2 |
| SCHED_03 | 3 |
TABLE_III1_var %>%
pluck("TAX_BASE") %>%
{if (is_html_output()) print_table(.) else .}| id | label |
|---|---|
| WGE | Weekly gross earnings |
| MGE | Monthly gross earnings |
| AGE | Annual gross earnings |
| TY | Taxable income measured for central government tax purposes |
| TYS | Taxable income modified for sub-central government purposes |
TABLE_III1_var %>%
pluck("RATE_THRESH") %>%
{if (is_html_output()) print_table(.) else .}| id | label |
|---|---|
| LUMP_SUM | Lump sum charge |
| 01_MR | 01 Marginal rate |
| 01_LOW_TH | 01 Lower threshold |
| 01_UP_TH | 01 Upper threshold |
| 02_MR | 02 Marginal rate |
| 02_LOW_TH | 02 Lower threshold |
| 02_UP_TH | 02 Upper threshold |
| 03_MR | 03 Marginal rate |
| 03_LOW_TH | 03 Lower threshold |
| 03_UP_TH | 03 Upper threshold |
| 04_MR | 04 Marginal rate |
| 04_LOW_TH | 04 Lower threshold |
| 04_UP_TH | 04 Upper threshold |
| 05_MR | 05 Marginal rate |
| 05_LOW_TH | 05 Lower threshold |
| 05_UP_TH | 05 Upper threshold |
| 06_MR | 06 Marginal rate |
| 06_LOW_TH | 06 Lower threshold |
| 06_UP_TH | 06 Upper threshold |
| 07_MR | 07 Marginal rate |
| 07_LOW_TH | 07 Lower threshold |
| 07_UP_TH | 07 Upper threshold |
| MAX_CONTR | Maximum contribution |
| DEDUC_BASE | % of payment given as relief from personal income tax |
TABLE_III1 %>%
filter(COU == "DEU") %>%
year_to_date %>%
left_join(TABLE_III1_var %>% pluck("RATE_THRESH"), by = c("RATE_THRESH" = "id")) %>%
rename(RATE_THRESH_desc = label) %>%
mutate(obsValue = obsValue/100) %>%
filter(grepl("rate", RATE_THRESH_desc)) %>%
ggplot() + geom_line(aes(x = date, y = obsValue, color = RATE_THRESH_desc)) +
scale_color_manual(values = viridis(3)[1:2]) +
theme_minimal() +
scale_x_date(breaks = seq(1920, 2025, 2) %>% paste0("-01-01") %>% as.Date,
labels = date_format("%y")) +
theme(legend.position = c(0.65, 0.6),
legend.title = element_blank()) +
scale_y_continuous(breaks = 0.01*seq(0, 70, 1)) +
ylab("Tax Rate (%)") + xlab("")