ggplotly() 不会将日期放在 x 轴上

ggplotly() does not put date on x-axis

我有一个需要交互的绘图,所以我尝试使用 ggplotly() 函数绘制它。但是,x 轴获取的值从 18k(自 1970 年 1 月 1 日以来的天数)开始,而不是日期。由于 ggplotly() 支持但 plotly() 不支持的不同几何图形太复杂,我无法使用正常的 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)

使用缩放函数

您可以在绘图中添加 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() +
  scale_x_date(date_labels = "%Y/%m/%d")
ggplotly(p) 

这是输出:

希望对您有所帮助。