ggplotly () не ставит дату на оси X - PullRequest
1 голос
/ 02 апреля 2020

У меня есть график, который должен быть интерактивным, поэтому я пытаюсь построить его с помощью функции ggplotly(). Тем не менее, ось X получает значения, начиная с 18k (дней с 1970-01-01) вместо дат. Я не могу использовать обычную функцию plotly() из-за сложности графика с разными геометриями, которые поддерживаются ggplotly(), но не поддерживаются plotly(). Как я могу получить даты на оси X?

library(ggplot2)
library(plotly)

data <- data.frame(x = runif(10) + 1:10,
                   date = seq.Date(as.Date("2019-07-01"),
                                   as.Date("2020-04-01"),
                                   by = "months"))

p <- ggplot(data, aes(x = date, y = x)) +
      geom_line()

ggplotly(p)

1 Ответ

1 голос
/ 02 апреля 2020

Использование функции масштабирования

Вы можете добавить функцию масштабирования топора к своему графику, например так:

library(ggplot2)
library(plotly)
data <- data.frame(x = runif(10) + 1:10,
                   date = seq.Date(as.Date("2019-07-01"),
                                   as.Date("2020-04-01"),
                                   by = "months"))

p <- ggplot(data, aes(x = date, y = x)) +
  geom_line() +
  scale_x_date(date_labels = "%Y/%m/%d")
ggplotly(p) 

Вот вывод:

enter image description here

Надеюсь, это поможет.

...