Как добавить текстовые аннотации к временному ряду ggplot - PullRequest
0 голосов
/ 16 октября 2018

Я знаю о annotate () и о том, что вам нужно добавить координаты x и y.Проблема в том, что мой x - это класс "" POSIXct "" POSIXt ". Поэтому, когда я пытаюсь использовать annotate, R отвечает, объект должен быть POSIXct. Я пробовал различные комбинации, пытаясь это исправить ... безуспешно. Есть идеи?

1 Ответ

0 голосов
/ 16 октября 2018

Убедитесь, что аргумент x в аннотации закодирован как POSIXct.Например, используя набор данных ячменя из пакета решетки, мы можем перекодировать год в POSIXct и затем аннотировать:

library(lattice)
library(tidyverse)

barley %>%
  #convert year from factor to numeric, and then to POSIXct
  mutate(year = as.numeric(levels(year))[year],
         year = as.POSIXct(paste0(year, "-01-01"))) %>% 
  group_by(year) %>% 
  summarise(AvgYield = mean(yield)) %>% 
  ggplot(aes(year, AvgYield)) + 
    geom_line() + 
    #now to annotate, just make sure to code x as POSIXct 
    #in a range that will appear on the plot
    annotate("text", x = as.POSIXct("1931-04-01"), y = 34, label = "Some text")
...