R+;哪个锤子?直亮,flexdashboard还是shinydashboard?
冒着被a击中的风险,我想问一下,鉴于出现了过多的交互式RR+;哪个锤子?直亮,flexdashboard还是shinydashboard?,r,shiny,shinydashboard,flexdashboard,R,Shiny,Shinydashboard,Flexdashboard,冒着被a击中的风险,我想问一下,鉴于出现了过多的交互式R闪亮的工具和软件包,您何时使用哪一种 闪亮-对我来说,唯一的缺点是您的项目需要从闪亮服务器运行,但似乎是最佳选择 shinydashboard-闪亮,但有很好的标注值框 flexdashboard-在Rmd中记录。这给你带来了什么,而你却没有?如果您乐于传递数据,那么向客户发送电子邮件是否有用?我一直在玩flexdashboard,但是它无法使用datatable(library(DT)),这让我觉得它需要更多的迭代 从其他答案来看,我并不
闪亮的工具和软件包,您何时使用哪一种
闪亮-对我来说,唯一的缺点是您的项目需要从闪亮服务器运行,但似乎是最佳选择
shinydashboard-闪亮,但有很好的标注值框
flexdashboard-在Rmd中记录。这给你带来了什么,而你却没有?如果您乐于传递数据,那么向客户发送电子邮件是否有用?我一直在玩flexdashboard
,但是它无法使用datatable(library(DT)),这让我觉得它需要更多的迭代
从其他答案来看,我并不是唯一一个这样做的人
创作者们提供了很多画廊来展示他们的作品/方法,但是你怎么知道该走哪条路呢
使用一种方法比使用另一种方法有什么明显的优势?有一点需要注意。交互性不一定需要运行代码的服务器。可以使用嵌入式JavaScript提供交互性,该JavaScript将在客户端执行(如plotly、highcharts、传单等)。因此,如果我们不使用“交互性”一词,而是明确描述交互性,那么您的选项将变成:
- 闪亮:需要一台服务器在其背后对用户输入执行R代码。可以实现任何布局。可以通过处理服务器端(在R中)或客户端(在嵌入式JavaScript中)来运行交互式代码
- shinydashboard:需要一台服务器在其背后对用户输入执行R代码。可以实现仪表板布局。包含一些设计用于仪表板布局的特定小部件。可以通过处理服务器端(在R中)或客户端(在嵌入式JavaScript中)来运行交互式代码
- flexdashboard:只是一个看起来像仪表板的文档。还包含一些设计用于仪表板布局的特定小部件。只能运行交互式代码客户端(在嵌入式JavaScript中)
因此,基本上,如果现有包(使用htmlwidgets)可以提供所需的任何交互性,那么您只需使用flexdashboard,而无需将其部署到任何服务器。否则,您确实需要部署到Shiny服务器,您应该使用Shiny或shinydashboard。我不同意您需要使用Shiny服务器来运行Shiny应用程序。我只需在5050端口(防火墙后面)的服务器上托管我的闪亮应用程序,任何客户端都可以通过ip:port访问该应用程序。我只运行了一个RStudio会话来完成这个任务
如果我通过路由器打开端口转发,这个应用程序也可以通过互联网访问——但出于安全原因,我不允许这样做
我喜欢Shiny提供的定制网页的灵活性
ShinyDashboard非常棒,因为它提供了一个商业外观,而无需自己编写所有css和html
Flexdashboard也很不错,因为您可以将其托管在一个可以处理降价的服务上,而不是通过iFrame或其他方式插入应用程序。我喜欢将闪亮的模块放在Flexdashboard中。只要将runtime:shinny
放在YAML
标题部分,使用shinny模块应该相对简单。所谓相对,我的意思是,花一天时间阅读RStudio中的所有示例,然后尝试对代码执行相同的操作。一旦您完成了学习过程,flexdashboards中的模块将使未来的开发更加精简,思维更加轻松,根据我的经验,我有机会真正专注于我被要求解决的基于数据的基本问题。我认为flexdashboards+shinny modules
是两个世界中最好的:flexdash可以分解一些布局项,轻松添加或删除一段代码,以更直观的布局隔离应用程序代码的各个方面(RMD文件中“chunk”的阴影,等等),同时还允许您进入更复杂的领域,典型的shiny
设置观察者、代理或自定义布局
shinydashboard比默认的shiny有更好的UI元素,但它就像一个现代主题。我不认为它应该被列为其他2的竞争对手
flexdashboard只是增强了RMarkdown,使用简单的UI安排约定、htmlwidgets等。您可以在其中使用Shiny,但它是有限的
要使用Shiny,您需要为UI和行为编写更多的代码,学习更多与html、css相关的内容,尤其是需要一些时间掌握的反应性内容。最终你得到了所有的力量和控制李>
您的输入和预期输出是什么?开玩笑的。这是一个有用的问题,希望能得到一些好的答案。嗯@cory,我已经投了一票反对票,所以猴子锤是有效的。我希望如此,我会更加担心重复的学生作业问题,而不是像这样的主题,大师们可以分享他们的经验…我相信,如果你想将你的应用部署到服务器(而不仅仅是在RStudio内部运行),这里的所有选项都需要闪亮的服务器。您应该能够在另一个选项中使用来自一个选项的有用元素,因为所有这些元素都基于R/shinny/RMarkdown。使用哪一个取决于您想要实现的目标:显示更多静态内容的仪表板?需要定期更新的报告?一个交互式应用程序,人们可以在其中更改许多参数?感谢@warmoverflow提供您的想法。理想情况下,我想要一个带有漂亮的打印报告按钮的交互式仪表板,一旦用户获得了他们想要的洞察力。如果您在flexdasboard中使用闪亮的运行时,您确实需要闪亮的服务器来承载它。