将动态变化的R htmlwidget嵌入到网页中

时间:2016-06-30 14:02:22

标签: javascript r iframe plotly htmlwidgets

我需要在R中使用javascript-visualization软件包,如plotly和dygraphs,并在我的网页中显示生成的图。只要用户与网页中的其他HTML元素进行交互,就需要更新生成的图。

我已经考虑过并且已经对Shiny服务器将UI与绘图集成的方式感到失望,因为它限制了开发人员使用javascript完全控制UI的方式,否则它很棒。

到目前为止,我发现我可以将htmlwidgets文件嵌入到IFrame中以显示情节,但正如本文中所讨论的那样:Embedding an R htmlwidgets into existing webpage,并且一般来说,iframe被认为是不好的做法,因此希望要做到这一点:Answer to the above-linked question

但问题是每次我使用plotly或dygraph重新生成一个图并使用htmlwidgets包的saveWidget()函数保存它们时,生成的图文件对于生成的图的div有不同的id。如何在外部HTML文件中嵌入div(使用srcs到更多html / css / js文件),每次生成打印文件时其id都会改变?

1 个答案:

答案 0 :(得分:0)

我建议我框架传递形式并使用Shiny。这不会导致在使用现成的服务器时重新创建轮子。