app
与用户之间的数据交换是非常常见的,我们需要上传数据用以分析,下载结果报告等数据。
前面已经学习Shiny基本知识,为了融会贯通理解学习的各种概念,这样将以一个实际案例进行实战。先准备需要的包:
前面主要学习的是用户前段UI,现在开始将学习服务端,这是用户不可见的Shiny部分,Shiny服务端利用的是响应式编程(Reactive Programming
),这是一种优美的、强大的编程范式,但是也是容易让人迷惑的。Reactive Programming
的核心是指定从属关系,当输出变化时,所有与其相关的输出将自动变化。这使得Shiny App变得流畅。
前面我们讲到,Shiny提供很多插件会丰富前端界面,前段设计主要包括输入,输出以及界面排版。
Shiny app主要包括两个关键组件:
R有很多的*apply函数,然后plyr
包提供了很多函数来替换*apply函数,但是我们还是经常用到*apply函数,很多时候不知道选择使用哪个*apply函数。