R中的dygraph同步不起作用

时间:2014-12-11 06:20:45

标签: r rstudio dygraphs

我正在运行以下RSTUDIO帮助页面提供的dygraph示例。

http://rstudio.github.io/dygraphs/gallery-synchronization.html

当我运行以下代码时,我会分别为每个dygraph获得单独的图。

dygraph(ldeaths, main = "All", group = "lung-deaths")
dygraph(mdeaths, main = "Male", group = "lung-deaths")
dygraph(fdeaths, main = "Female", group = "lung-deaths")

我没有获得帮助页面中显示的同步图。 “组”变量“肺死亡”不是xts对象的一部分。 如果我遗漏了一些基本的东西,请告诉我。

由于

与Pradeep

3 个答案:

答案 0 :(得分:2)

要在同一个RStudio窗口中绘制多个 dygraphs ,您必须先创建一个 dygraphs 对象列表,然后使用 dygraphs 列表进行渲染包 htmltools 。来自RStudio的Yihui Xie在这里提供了答案: Yihui Xie answer(但没有分组) 我在这里回答了类似的问题:my answer,此处:my answer

以下是工作R代码,用于生成分组(同步) dygraphs 图:

# create a list of dygraphs objects
library(dygraphs)
library(htmltools)
dy_graph <- list(
  dygraphs::dygraph(ldeaths, main = "All", group = "lung-deaths"),
  dygraphs::dygraph(mdeaths, main = "Male", group = "lung-deaths"),
  dygraphs::dygraph(fdeaths, main = "Female", group = "lung-deaths")
)  # end list

# render the dygraphs objects using htmltools
htmltools::browsable(htmltools::tagList(dy_graph))

以上R代码生成以下分组(同步) dygraphs 图:

enter image description here

答案 1 :(得分:1)

(我无法添加评论,因为我还没有足够的声誉。)

通过查看dygraph gallery背后的代码(右键点击图表并选择&#34; Inspect&#34;在Google Chrome中),看起来每个图表都是自己的html元素。因此,如果它们在同一个html页面上,它们可以同步。这在Rstudio中不起作用。

如果可以一次绘制几个dygraph()图表(正如@schlusie在这个SO问题dygraph in R multiple plots at once中所提出但尚未回答),那么同步化可能在Rstudio中起作用。

也许知道css的人有其他意见。

答案 2 :(得分:1)

我遇到了同样的问题。我无法重现RStudio中gallery help page提供的同步的dygraph示例。 但是,为了满足我对纯可视化的需求,我在github上找到了一个解决方法:

根据您的需要在R脚本中指定您的dygraph对象(例如 myscript.R ),并将它们分配给变量(例如d1d2)。< / p>

d1 = dygraph(ldeaths, main = "All", group = "lung-deaths")
d2 = dygraph(mdeaths, main = "Male", group = "lung-deaths")

在代码单元格中打开R-markdown文档source()您的R脚本并调用变量。

 {r, echo=FALSE}
 source("myscript.R")
 d1
 d2

最后,将R-markdown文档渲染为 html 文件( Kint to html )。通过设置echo=FALSE,您可以取消字母数字输出,最后得到带有同步dygraph图的 html 文档。

相关问题