R+ Shiny 哪个锤子?直 Shiny 、柔性仪表板还是 Shiny 仪表板?

标签 r shiny shinydashboard flexdashboard

冒着被 mods "too broad a question" hammer 击中的风险,我想问鉴于过多的交互式 R Shiny工具和软件包层出不穷,您什么时候使用哪一个?

  1. Shiny - 对我来说唯一的缺点是你的项目需要从 Shiny 的服务器运行,但似乎是最好的选择。

  2. shinydashboard - Shiny 但有漂亮的标注值框。

  3. flexdashboard - 将其写在 Rmd 中。这对你有什么好处,而直发 Shiny 却没有呢?如果您乐意传递数据,向客户发送电子邮件也许有用吗?我一直在玩flexdashboard但它无法使用数据表(库(DT))让我觉得它需要更多迭代。

看看其他答案,我并不孤单asking this question .

创作者提供了很多画廊来展示他们的包/方法,但你怎么知道该走哪条路呢?

使用其中一种相对于另一种有哪些明显的优势?

最佳答案

需要注意一个细微差别。交互性不一定需要其背后有运行代码的服务器。可以使用嵌入式 JavaScript 来提供交互性,该 JavaScript 将在客户端执行(如plotly、highcharts、leaflet 等)。因此,如果我们不使用“交互性”一词,而是明确地描述交互性,那么您的选择将变为:

  • Shiny:需要一个服务器在其后面根据用户输入执行 R 代码。可以实现任何布局。可以通过处理服务器端(在 R 中)或客户端(在嵌入式 JavaScript 中)来运行交互式代码。
  • shinydashboard:后面需要一个服务器来根据用户输入执行 R 代码。可以实现仪表板布局。包含一些设计用于在仪表板布局中工作的特定小部件。可以通过处理服务器端(在 R 中)或客户端(在嵌入式 JavaScript 中)来运行交互式代码。
  • flexdashboard:只是一个看起来像仪表板的文档。还包含一些设计用于在仪表板布局中工作的特定小部件。只能在客户端运行交互式代码(在嵌入式 JavaScript 中)。

所以基本上,如果现有的软件包(使用 htmlwidgets)可以提供所需的任何交互性,那么您可以只使用 flexdashboard,而无需将其部署到任何 Shiny 服务器。否则,您确实需要部署到 Shiny 服务器,并且应该使用 Shiny 或 Shiny 仪表板。

关于R+ Shiny 哪个锤子?直 Shiny 、柔性仪表板还是 Shiny 仪表板?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37992147/

相关文章:

R:summary(factor) 函数如何对值进行排序?

r - 如何在 Shiny 中使数据集响应式?

css - Shiny 的井板宽度

R:如何使用 apply 循环遍历 data.frame 中的变量

r - 警告 : Mutate_impl(. 数据,点):不相等的因子级别:强制转换为字符

r - 使用 bslib 的可折叠侧边栏无需额外的 JS?

R 水平 Shiny 显示 wellPanel 对象

r - 根据 Shiny R 中的单选按钮显示 slider 输入

r - 绝对面板与 r Shiny 仪表板侧边栏面板碰撞

r - 忽略编织 R markdown (Rmd) 文件时发生的所有错误?