rm(list = ls())

Sys.setenv(LANG = "en")
library(xlsx)
library(readr)
library(readxl)
library(tidyverse)
library(stringr)
library(stringi)
library(gghighlight)
library(countrycode)
library(countries)
library(janitor)
library(sf)

library(janitor)
library(sf)
library(ggthemes)
library(here)
library(viridis)
library(ggplot2)
library(formatR)
library(gtools)
library(nnet) 
library(patchwork)
library(ggh4x)

library(plm)
library(broom)
library(ggalluvial)

library(pals)

Load data —————————————————————

Large datasets (move load to different notebook)

aggregates <- read_csv("../aggregated_data/aggregates.csv")
aggregates_year <- read_csv("../aggregated_data/aggregates_year.csv")

Convert vars to factor. read_csv changes original type.

aggregates_year <- aggregates_year %>% 
  mutate(subregion_rf = as_factor(subregion),
        subregion_rf = relevel(subregion_rf, "Northern America"),
        continent = as_factor(continent),
        continent = relevel(continent, "Americas"))

Figure 3

Continent by year

myColors <- alphabet2()
names(myColors) <- levels(aggregates_year$subregion_rf)

(salience_subregions <- aggregates_year %>%
    filter(!is.na(subregion_rf)) %>% 
    group_by(pubyear, continent, subregion_rf) %>% 
    summarise(n = sum(art_country_y)) %>% 
    ggplot() +
    geom_bar(mapping = aes(x = pubyear, y = n, group = subregion_rf, fill = subregion_rf), stat = "identity") +
    facet_wrap(vars(continent)) +
  theme_minimal() +
  theme(legend.title = element_blank(),
        legend.text = element_text(size = 22),
        legend.position = "bottom",
        axis.text = element_text(size = 25),
        axis.title=element_text(size = 25),
        strip.text = element_text(size = 25)) +
    labs(fill = "Subregion UN classification",
         y = "Research salience",
         x = "Publication year") +
  scale_fill_manual(name = "subregion_rf", values = myColors))

ggsave("../output_figures/subregions_year_abs.png", width = 50, height = 30, units = "cm", dpi = 700, scale = 1, plot = last_plot())

Figure S. 3

Underrepresentation by continent, subregion, and year

(repr_subregions <- aggregates_year %>%
    filter(!is.na(subregion_rf)) %>%
    count(continent, subregion_rf, pubyear, repr_y_s) %>% 
    filter(repr_y_s == "Under") %>% 
    ggplot() +
    geom_bar(mapping = aes(x = pubyear, y = n, group = subregion_rf, fill = subregion_rf), stat = "identity") +
    facet_wrap(vars(continent)) +
  theme_minimal() +
  theme(legend.title = element_blank(),
        legend.text = element_text(size = 22),
        legend.position = "bottom",
        axis.text = element_text(size = 25),
        axis.title=element_text(size = 25),
        strip.text = element_text(size = 25)) +
    labs(fill = "Subregion UN classification",
         y = "Counts of under-rerepresented countries",
         x = "Publication year") +
  scale_fill_manual(name = "subregion_rf", values = myColors))

ggsave("../output_figures/representation_subregions_year_abs.png", width = 50, height = 30, units = "cm", dpi = 700, scale = 1, plot = last_plot())


(repr_subregions <- aggregates_year %>%
    filter(!is.na(subregion_rf)) %>%
    count(continent, subregion_rf, pubyear, repr_y_s) %>% 
    filter(repr_y_s == "Under") %>% 
    ggplot() +
    geom_bar(mapping = aes(x = pubyear, y = n, group = subregion_rf, fill = subregion_rf), stat = "identity") +
    facet_wrap(vars(continent)) +
  theme_minimal() +
  theme(legend.position = "none",
        axis.text = element_text(size = 25),
        axis.title=element_text(size = 25),
        strip.text = element_text(size = 25)) +
    labs(fill = "Subregion UN classification",
         y = "Counts of under-rerepresented countries",
         x = "Publication year") +
  scale_fill_manual(name = "subregion_rf", values = myColors))

salience_subregions / repr_subregions

ggsave("../output_figures/subregions_both.png", width = 50, height = 60, units = "cm", dpi = 700, scale = 1, plot = last_plot())

LS0tDQp0aXRsZTogIlIgTm90ZWJvb2siDQpvdXRwdXQ6IGh0bWxfbm90ZWJvb2sNCi0tLQ0KDQpgYGB7cn0NCnJtKGxpc3QgPSBscygpKQ0KDQpTeXMuc2V0ZW52KExBTkcgPSAiZW4iKQ0KbGlicmFyeSh4bHN4KQ0KbGlicmFyeShyZWFkcikNCmxpYnJhcnkocmVhZHhsKQ0KbGlicmFyeSh0aWR5dmVyc2UpDQpsaWJyYXJ5KHN0cmluZ3IpDQpsaWJyYXJ5KHN0cmluZ2kpDQpsaWJyYXJ5KGdnaGlnaGxpZ2h0KQ0KbGlicmFyeShjb3VudHJ5Y29kZSkNCmxpYnJhcnkoY291bnRyaWVzKQ0KbGlicmFyeShqYW5pdG9yKQ0KbGlicmFyeShzZikNCg0KbGlicmFyeShqYW5pdG9yKQ0KbGlicmFyeShzZikNCmxpYnJhcnkoZ2d0aGVtZXMpDQpsaWJyYXJ5KGhlcmUpDQpsaWJyYXJ5KHZpcmlkaXMpDQpsaWJyYXJ5KGdncGxvdDIpDQpsaWJyYXJ5KGZvcm1hdFIpDQpsaWJyYXJ5KGd0b29scykNCmxpYnJhcnkobm5ldCkgDQpsaWJyYXJ5KHBhdGNod29yaykNCmxpYnJhcnkoZ2doNHgpDQoNCmxpYnJhcnkocGxtKQ0KbGlicmFyeShicm9vbSkNCmxpYnJhcnkoZ2dhbGx1dmlhbCkNCg0KbGlicmFyeShwYWxzKQ0KYGBgDQoNCiMgTG9hZCBkYXRhIC0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLS0tLQ0KDQojIyBMYXJnZSBkYXRhc2V0cyAobW92ZSBsb2FkIHRvIGRpZmZlcmVudCBub3RlYm9vaykNCg0KYGBge3J9DQphZ2dyZWdhdGVzIDwtIHJlYWRfY3N2KCIuLi9hZ2dyZWdhdGVkX2RhdGEvYWdncmVnYXRlcy5jc3YiKQ0KYWdncmVnYXRlc195ZWFyIDwtIHJlYWRfY3N2KCIuLi9hZ2dyZWdhdGVkX2RhdGEvYWdncmVnYXRlc195ZWFyLmNzdiIpDQpgYGANCg0KIyMgQ29udmVydCB2YXJzIHRvIGZhY3Rvci4gcmVhZF9jc3YgY2hhbmdlcyBvcmlnaW5hbCB0eXBlLg0KYGBge3J9DQphZ2dyZWdhdGVzX3llYXIgPC0gYWdncmVnYXRlc195ZWFyICU+JSANCiAgbXV0YXRlKHN1YnJlZ2lvbl9yZiA9IGFzX2ZhY3RvcihzdWJyZWdpb24pLA0KICAgICAgICBzdWJyZWdpb25fcmYgPSByZWxldmVsKHN1YnJlZ2lvbl9yZiwgIk5vcnRoZXJuIEFtZXJpY2EiKSwNCiAgICAgICAgY29udGluZW50ID0gYXNfZmFjdG9yKGNvbnRpbmVudCksDQogICAgICAgIGNvbnRpbmVudCA9IHJlbGV2ZWwoY29udGluZW50LCAiQW1lcmljYXMiKSkNCmBgYA0KDQojIEZpZ3VyZSAzDQoNCiMjIENvbnRpbmVudCBieSB5ZWFyDQoNCmBgYHtyfQ0KbXlDb2xvcnMgPC0gYWxwaGFiZXQyKCkNCm5hbWVzKG15Q29sb3JzKSA8LSBsZXZlbHMoYWdncmVnYXRlc195ZWFyJHN1YnJlZ2lvbl9yZikNCg0KKHNhbGllbmNlX3N1YnJlZ2lvbnMgPC0gYWdncmVnYXRlc195ZWFyICU+JQ0KICAgIGZpbHRlcighaXMubmEoc3VicmVnaW9uX3JmKSkgJT4lIA0KICAgIGdyb3VwX2J5KHB1YnllYXIsIGNvbnRpbmVudCwgc3VicmVnaW9uX3JmKSAlPiUgDQogICAgc3VtbWFyaXNlKG4gPSBzdW0oYXJ0X2NvdW50cnlfeSkpICU+JSANCiAgICBnZ3Bsb3QoKSArDQogICAgZ2VvbV9iYXIobWFwcGluZyA9IGFlcyh4ID0gcHVieWVhciwgeSA9IG4sIGdyb3VwID0gc3VicmVnaW9uX3JmLCBmaWxsID0gc3VicmVnaW9uX3JmKSwgc3RhdCA9ICJpZGVudGl0eSIpICsNCiAgICBmYWNldF93cmFwKHZhcnMoY29udGluZW50KSkgKw0KICB0aGVtZV9taW5pbWFsKCkgKw0KICB0aGVtZShsZWdlbmQudGl0bGUgPSBlbGVtZW50X2JsYW5rKCksDQogICAgICAgIGxlZ2VuZC50ZXh0ID0gZWxlbWVudF90ZXh0KHNpemUgPSAyMiksDQogICAgICAgIGxlZ2VuZC5wb3NpdGlvbiA9ICJib3R0b20iLA0KICAgICAgICBheGlzLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDI1KSwNCiAgICAgICAgYXhpcy50aXRsZT1lbGVtZW50X3RleHQoc2l6ZSA9IDI1KSwNCiAgICAgICAgc3RyaXAudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplID0gMjUpKSArDQogICAgbGFicyhmaWxsID0gIlN1YnJlZ2lvbiBVTiBjbGFzc2lmaWNhdGlvbiIsDQogICAgICAgICB5ID0gIlJlc2VhcmNoIHNhbGllbmNlIiwNCiAgICAgICAgIHggPSAiUHVibGljYXRpb24geWVhciIpICsNCiAgc2NhbGVfZmlsbF9tYW51YWwobmFtZSA9ICJzdWJyZWdpb25fcmYiLCB2YWx1ZXMgPSBteUNvbG9ycykpDQpgYGANCg0KIyBGaWd1cmUgUy4gMw0KDQojIyBVbmRlcnJlcHJlc2VudGF0aW9uIGJ5IGNvbnRpbmVudCwgc3VicmVnaW9uLCBhbmQgeWVhcg0KDQpgYGB7cn0NCihyZXByX3N1YnJlZ2lvbnMgPC0gYWdncmVnYXRlc195ZWFyICU+JQ0KICAgIGZpbHRlcighaXMubmEoc3VicmVnaW9uX3JmKSkgJT4lDQogICAgY291bnQoY29udGluZW50LCBzdWJyZWdpb25fcmYsIHB1YnllYXIsIHJlcHJfeV9zKSAlPiUgDQogICAgZmlsdGVyKHJlcHJfeV9zID09ICJVbmRlciIpICU+JSANCiAgICBnZ3Bsb3QoKSArDQogICAgZ2VvbV9iYXIobWFwcGluZyA9IGFlcyh4ID0gcHVieWVhciwgeSA9IG4sIGdyb3VwID0gc3VicmVnaW9uX3JmLCBmaWxsID0gc3VicmVnaW9uX3JmKSwgc3RhdCA9ICJpZGVudGl0eSIpICsNCiAgICBmYWNldF93cmFwKHZhcnMoY29udGluZW50KSkgKw0KICB0aGVtZV9taW5pbWFsKCkgKw0KICB0aGVtZShsZWdlbmQudGl0bGUgPSBlbGVtZW50X2JsYW5rKCksDQogICAgICAgIGxlZ2VuZC50ZXh0ID0gZWxlbWVudF90ZXh0KHNpemUgPSAyMiksDQogICAgICAgIGxlZ2VuZC5wb3NpdGlvbiA9ICJib3R0b20iLA0KICAgICAgICBheGlzLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDI1KSwNCiAgICAgICAgYXhpcy50aXRsZT1lbGVtZW50X3RleHQoc2l6ZSA9IDI1KSwNCiAgICAgICAgc3RyaXAudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplID0gMjUpKSArDQogICAgbGFicyhmaWxsID0gIlN1YnJlZ2lvbiBVTiBjbGFzc2lmaWNhdGlvbiIsDQogICAgICAgICB5ID0gIkNvdW50cyBvZiB1bmRlci1yZXJlcHJlc2VudGVkIGNvdW50cmllcyIsDQogICAgICAgICB4ID0gIlB1YmxpY2F0aW9uIHllYXIiKSArDQogIHNjYWxlX2ZpbGxfbWFudWFsKG5hbWUgPSAic3VicmVnaW9uX3JmIiwgdmFsdWVzID0gbXlDb2xvcnMpKQ0KDQoocmVwcl9zdWJyZWdpb25zIDwtIGFnZ3JlZ2F0ZXNfeWVhciAlPiUNCiAgICBmaWx0ZXIoIWlzLm5hKHN1YnJlZ2lvbl9yZikpICU+JQ0KICAgIGNvdW50KGNvbnRpbmVudCwgc3VicmVnaW9uX3JmLCBwdWJ5ZWFyLCByZXByX3lfcykgJT4lIA0KICAgIGZpbHRlcihyZXByX3lfcyA9PSAiVW5kZXIiKSAlPiUgDQogICAgZ2dwbG90KCkgKw0KICAgIGdlb21fYmFyKG1hcHBpbmcgPSBhZXMoeCA9IHB1YnllYXIsIHkgPSBuLCBncm91cCA9IHN1YnJlZ2lvbl9yZiwgZmlsbCA9IHN1YnJlZ2lvbl9yZiksIHN0YXQgPSAiaWRlbnRpdHkiKSArDQogICAgZmFjZXRfd3JhcCh2YXJzKGNvbnRpbmVudCkpICsNCiAgdGhlbWVfbWluaW1hbCgpICsNCiAgdGhlbWUobGVnZW5kLnBvc2l0aW9uID0gIm5vbmUiLA0KICAgICAgICBheGlzLnRleHQgPSBlbGVtZW50X3RleHQoc2l6ZSA9IDI1KSwNCiAgICAgICAgYXhpcy50aXRsZT1lbGVtZW50X3RleHQoc2l6ZSA9IDI1KSwNCiAgICAgICAgc3RyaXAudGV4dCA9IGVsZW1lbnRfdGV4dChzaXplID0gMjUpKSArDQogICAgbGFicyhmaWxsID0gIlN1YnJlZ2lvbiBVTiBjbGFzc2lmaWNhdGlvbiIsDQogICAgICAgICB5ID0gIkNvdW50cyBvZiB1bmRlci1yZXJlcHJlc2VudGVkIGNvdW50cmllcyIsDQogICAgICAgICB4ID0gIlB1YmxpY2F0aW9uIHllYXIiKSArDQogIHNjYWxlX2ZpbGxfbWFudWFsKG5hbWUgPSAic3VicmVnaW9uX3JmIiwgdmFsdWVzID0gbXlDb2xvcnMpKQ0KDQpgYGANCg0KYGBge3J9DQpzYWxpZW5jZV9zdWJyZWdpb25zIC8gcmVwcl9zdWJyZWdpb25zDQoNCmdnc2F2ZSgiLi4vb3V0cHV0X2ZpZ3VyZXMvZmlndXJlXzNfc3VicmVnaW9uc19ib3RoLnBuZyIsIHdpZHRoID0gNTAsIGhlaWdodCA9IDYwLCB1bml0cyA9ICJjbSIsIGRwaSA9IDcwMCwgc2NhbGUgPSAxLCBwbG90ID0gbGFzdF9wbG90KCkpDQpgYGANCg0KDQoNCg0KDQoNCg0KDQoNCg0KDQo=