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

Embedding a dynamically changing R htmlwidget into a webpage

我需要在 R 中使用 javascript-可视化包,如 plotly 和 dygraphs,并在我的网页中显示生成的图。每当用户与网页中的其他 HTML 元素交互时,生成的图都需要更新。

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

直到现在,我发现我可以将 htmlwidgets 文件嵌入到 IFrame 中以显示情节,但正如本文 post 中所讨论的那样:, and in general, Iframes are considered bad practice, and thus would like to do this: .

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

我建议我设计框架以通过表单并使用 Shiny。这不会导致使用现成的服务器重新创建轮子。