For the all models, I took the intersection of words common across all languages and also in the brysbaert norms (N = 1132), and divided them into concretness quintiles. This is what the correlations look like across language pairs.

conc_corr <- read_csv("data/lang_pairwise_tile_correlations_ets.csv",
                      col_names = c("tile1", "tile2", "corr", "lang1", "lang2")) 
  
conc_corr_ms <- conc_corr %>%
  group_by(tile1, tile2) %>%
  multi_boot_standard(col = "corr") %>%
  ungroup() %>%
  filter(tile2 <= tile1) %>%
  mutate(tile1 = as.factor(tile1)) %>%
  mutate(group_type = ifelse(tile1 == tile2, "same", "diff"))

ggplot(conc_corr_ms, aes(x = tile2, y = mean, color = tile1, 
                         group = tile1)) +
  scale_colour_discrete( name="Quintile 2") +
  geom_line() +
  ylab("Cross-linguistic word-pairwise correlation\n (Pearson's r)") +
  geom_pointrange(aes(ymin = ci_lower, max = ci_upper), size = .1)  +
  scale_x_continuous(breaks=1:5) +
  ggtitle("Mean correlation by quintile  (tile2 <= tile1)") +
  xlab("Quintile 1") +
  theme_classic() 

conc_corr_ms <- conc_corr %>%
  group_by(tile1, tile2) %>%
  multi_boot_standard(col = "corr") 

ggplot(conc_corr_ms, aes(x = tile1, y = tile2, fill = mean)) +
  geom_tile() +
scale_fill_gradient(low = "white", high = "red") +
theme_classic()