在R中具有负值的dygraph条形图

时间:2018-03-19 19:40:03

标签: javascript r r-dygraphs

我有时间序列数据,我想在R中用dygraphs绘制条形图而不是线条。我使用dygraphs documentation中的以下plotter建议。

dyBarChart <- function(dygraph) {
  dyPlotter(dygraph = dygraph,
            name = "BarChart",
            path = system.file("plotters/barchart.js",
                               package = "dygraphs"))
}

我遇到的问题是代表负值 使用线图,此dygraph()可以正常工作:

dygraph(test)

enter image description here

但是,当我们添加条形图时,不会绘制任何内容并返回警告:

dygraph(z)  %>%  dyBarChart() 
There were 14 warnings (use warnings() to see them)
> warnings()

Warning messages:
1: In normalizePath(path) : path[1]="": No such file or directory
2: In file.copy(from, to, overwrite = TRUE, recursive = isdir) : too deep nesting
3: In file.copy(from, to, overwrite = TRUE, recursive = isdir) : too deep nesting...

在R dygraph条形图中绘制负值是否有已知的解决方法?

以下是示例数据:

> dput(test)
structure(c(-6L, 0L, -4L, -1L, 2L, 0L, 18L, -3L, -2L, -1L, -2L, 
1L, -22L, -5L, -1L, 3L, 11L, 2L, -2L, 5L, -3L, -1L, -2L, 0L, 
12L), index = structure(c(1521217200, 1521217800, 1521218400, 
1521219000, 1521219600, 1521220200, 1521220800, 1521221400, 1521222000, 
1521222600, 1521223200, 1521223800, 1521224400, 1521225000, 1521225600, 
1521226200, 1521226800, 1521227400, 1521228000, 1521228600, 1521229200, 
1521229800, 1521230400, 1521231000, 1521231600), class = c("POSIXct", 
"POSIXt"), tzone = ""), class = "zoo")

1 个答案:

答案 0 :(得分:1)

如果你在你提供的链接中尝试这个例子,你会发现它不起作用。但是感谢:lock it

这是正确的代码工作的dyBarChart函数。

dyBarChart <- function(dygraph) {
    dyPlotter(
        dygraph = dygraph,
        name = "BarChart",
        path = system.file("examples/plotters/barchart.js",package = "dygraphs")
    )
}

dygraph(test) %>% dyBarChart()