什么是Shiny?
Shiny包可以快速搭建基于R的交互网页应用。对于web的交互,之前已经有一些相关的包,不过都需要开发者熟悉网页编程语言(html,CSS,JS)。最近我们被客户要求撰写关于R Shiny的研究报告,包括一些图形和统计输出。
Shiny包的特点在于不需要了解网页语言,用纯R来搭建。生成的网页应用是动态交互、即时更新的。Shiny还提供了现成组件方便快速在网页上展示数据、图表和模型。
通过交互网页应用,你可以
1) 不需要安装任何程序, 携带数据, 只要有网的地方, 你就能演示。(远程)
2) 只要安装一次, 可以多人使用, 可以让别人试用。(多用户)
3) 不用担心软件或者代码泄密, 可以控制用户使用时间和权限。 (服务)
4) 通过交互式操作,在数据分析中减少重复的工作如调整参数等。(交互)
组成
Shiny应用包含连个基本的组成部分:一个是用户界面脚本(a user-interface ),另一个是服务器脚本(a server )。
Shiny还有很多有用的控件,如下图所示:
基本框架
案例一:智能电表数据交互网页应用
部分实现功能:
1,当输入用户ID之后, 显示此用户的一天的所有用电量数据。
2,当输入用户ID之后, 显示用户当月及上个月的用电量。
3,当输入用户ID以后,显示一年的用电量(分为四个季节)。
案例二:银行贷款数据交互网页应用
部分实现功能:
1,实现机构贷款数据的读取。
2,浏览数据的基本概况。
3,对数据进行条件筛选基本可视化及输出。