R/dygraphs 错误:传递给参数“数据”的类型不受支持

问题描述 投票:0回答:1

我正在使用 R 编程语言。

我按照这里的教程https://rstudio.github.io/dygraphs/制作以下图表:

我尝试为这个例子模拟一些数据:

library(dygraphs)


set.seed(1)
date <- seq(as.Date("2010-01-01"), as.Date("2010-12-01"), by = "month")
var1 <- rnorm(length(date), mean = 100, sd = 10)
var2 <- rnorm(length(date), mean = 50, sd = 5)
df <- data.frame(date, var1, var2)

然后,我尝试制作这个图表:

dygraph(df, main = "Stacked Graph") %>%
  dySeries("var1", label = "Var1") %>%
  dySeries("var2", label = "Var2") %>%
  dyOptions(stackedGraph = TRUE) %>%
  dyRangeSelector(height = 20)

但是我收到以下错误:

Error in dygraph(df, main = "Stacked Graph") : 
  Unsupported type passed to argument 'data'.

有人可以告诉我如何解决这个问题吗?

谢谢!

更新:我想我能够弄清楚:

library(xts)
df_xts <- xts(df[,-1], order.by = df$date)

dygraph(df_xts, main = "Stacked Graph") %>%
  dySeries("var1", label = "Var1") %>%
  dySeries("var2", label = "Var2") %>%
  dyOptions(stackedGraph = TRUE) %>%
  dyRangeSelector(height = 20)
r dygraphs
1个回答
2
投票

在链接的示例中,

lungDeaths
是时间序列对象,而不是数据框。您可以按如下方式创建
df

var1 <- ts(var1, start = 2010, frequency = 12)
var2 <- ts(var2, start = 2010, frequency = 12)
df <- cbind(var1, var2)

然后你的绘图代码会产生

© www.soinside.com 2019 - 2024. All rights reserved.