Как пометить только один раз при построении нескольких продольных траекторий в R? - PullRequest
0 голосов
/ 23 мая 2019

Я сделал график с несколькими траекториями, как показано на рисунке https://i0.wp.com/svbtleusercontent.com/xcexi7wk8xsj1w_small.png?w=456&ssl=1 Давайте использовать его в качестве воспроизводимого примера:

library(ourworldindata)
id <- financing_healthcare %>% 
     filter(continent %in% c("Oceania", "Europe") & between(year, 2001, 2005)) %>% 
     select(continent, country, year, health_exp_total) %>% 
     na.omit()
ggplot(id, aes(x = year, y = health_exp_total, group = country, color = continent)) +
     geom_line()

Если я хочу добавить метки стран на графике, я делаю

ggplot(id, aes(x = year, y = health_exp_total, group = country, color = continent, label= country)) +
     geom_line()+geom_text()

Но, таким образом, ярлыки повторяются для каждого года и перекрываются с другими. Возможно ли, чтобы каждый ярлык появлялся только в течение года и не перекрывался?

Большое спасибо!

1 Ответ

1 голос
/ 23 мая 2019
#devtools::install_github('drsimonj/ourworldindata')
library(ourworldindata)
library(dplyr)
library(ggplot2)
library(ggrepel)

id <- financing_healthcare %>% 
  filter(continent %in% c("Oceania", "Europe") & between(year, 2001, 2005)) %>% 
  select(continent, country, year, health_exp_total) %>% 
  na.omit()

idl = id %>% filter(year == 2005)
ggplot(id, aes(x = year, y = health_exp_total, group = country, color = continent)) +
  geom_line() +
  geom_text_repel(data=idl, aes(label=country), size=2.5)

введите описание изображения здесь

...