您如何在R中生成仪表板?


17

我需要生成定期(每日,每月)的网络分析仪表板报告。它们将是静态的,不需要交互,因此可以将PDF文件作为目标输出。这些报告将混合表格和图表(主要是使用ggplot2创建的迷你图和项目符号图)。考虑一下Stephen Few / Perceptual Edge样式的仪表板,例如:样本仪表板

但适用于网络分析。

关于使用哪些程序包创建这些仪表板报告的任何建议?

我的第一个直觉是使用R markdown和knitr,但也许您找到了更好的解决方案。我似乎找不到从R生成的仪表板的丰富示例。


我建议更换untagged与标签rdashboardsreports或类似的。
Aleksandr Blekh

您是否如上所述创建了该仪表板?我很想看看代码!
Kare 2014年

Answers:


15

我认为Shiny在这种情况下这太过分了,不符合您将仪表板报告设为静态的要求。我猜想,您对“仪表板”一词的使用有点令人困惑,因为某些人可能会认为它更强调交互性实时仪表板),而不是信息布局,正如我的理解(由“静态”要求)。

我建议您使用R Markdownknitr,尤其是因为这些软件包的学习曲线比Shiny低得多。此外,我最近遇到过R程序包,我认为,R程序包非常适合您在报表中嵌入小图表/图形的要求,如上图所示。该软件包生成静态或动态图形表,称为sparkTablehttp://cran.r-project.org/web/packages/sparkTable)。其插图可以在此处获得(包装的主页上没有指向它的链接):http : //publik.tuwien.ac.at/files/PubDat_228663.pdf。如果您需要一些互动性sparkTable通过其简单的界面提供了一些信息Shiny


我不了解sparkTable,看起来像是完成这项工作的好工具。
shadowtalker 2014年

@ssdecontrol:直到最近,我也不知道。当然,它看起来像是个很棒的工具。如果我有需要和机会,我期待在我的项目中尝试。
2014年

9

Shiny是一个框架,用于生成动态执行R代码的基于HTML的应用程序。闪亮的应用程序可以单独使用,也可以使用内置在Markdown文档中knitr,而闪亮的开发则完全集成到RStudio中。甚至还有一个名为Shinyapps.io的免费服务,用于托管Shiny应用程序,该shiny软件包具有直接从R部署Shiny应用程序的功能,RStudio具有用于调用这些功能的GUI界面。该站点的“教程”部分提供了更多信息。

由于它本质上是将整个过程“编译”为JavaScript和HTML,因此尽管Shiny具有不错的包装器功能,但是您可以使用CSS来自由更改格式和布局。但是碰巧的是,它们的默认配色方案与您发布的屏幕快照中的相似。

编辑:我只是意识到您不需要它们是动态的。Shiny仍然使开箱即用的网页看起来非常漂亮,并提供了许多重新排列元素的选项。还有下载图的功能,因此您可以每月更新仪表板上的数据文件,然后将生成的图像保存为PDF,从而每月生成仪表板。



1

我必须创建一个基于Web的仪表板。我的主要制图工具是d3js。但是我需要使用ggplot2生成一些图表。通过d3js的ggplot2扩展,我可以创建相同的东西。如果您的图表可以通过现有的扩展程序生成,那么Web有更好的选择。稍后,您可以将它们导出为PDF以进行分发。


1

R还有一个htmlwidgets包,其中包含D3 javascript可视化效果,网址为:http ://www.htmlwidgets.org/


1

您可以尝试ShinyDashboard,而忽略任何交互方面。在我看来,允许用户放大绘图或在列中搜索某些值还是不错的。Shiny将允许您执行此操作。

By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.