R语言 使用Shiny包创建一个交互式网络应用程序
在继续之前,也许快速介绍一下Shiny是什么会有帮助。由于Shiny包的存在,用R编程语言创建交互式网络应用程序非常简单。Shiny的优势在于,它使你能够将你的R代码扩展到网络上,这从本质上增加了你的代码对更多人的实用性。
由于R Shiny框架,即RStudio的一个软件包,用R构建交互式网络应用程序是非常简单的。R Shiny的奇妙之处在于,它能让你产生令人难以置信的有效数据报告和可视化,让用户探索一个数据集。除了Shiny元素外,你还可以使用HTML元素来设计你的应用程序的内容。
R-Shiny网络应用的构建模块
Shiny网络应用有两个部分。
- 用户界面 – {ui.R}UI控制应用程序页面上显示的内容以及组件的布局方式。这可能包括文本和其他标记元素、图形、接受用户输入的小工具,或绘图。在本教程中,你还将使用用户界面来定义一个带有多个标签的导航条。接收用户输入值的前端被称为 “用户界面”。
- 服务器– {server.R}是处理这些输入值的后端,以创建最终显示在网站上的输出结果。将通过用户界面显示的数据是在服务器的控制之下。你将把数据加载到服务器上并对其进行管理,然后使用来自用户界面的输入定义你的输出。
R-Shiny Web应用程序的构建模块
设置Shiny应用程序的步骤
- 创建一个新的目录,然后在其中创建两个R脚本,”ui.R “和 “server.R”,以创建一个新的Shiny应用程序。server.R “脚本将指定应用程序的逻辑和功能,而 “ui.R “脚本将指定应用程序的设计和用户接口。
- 使用 “ui.R “脚本的fluidPage()、sidebarLayout()和textInput()函数来设计应用程序的布局和用户界面。
- 使用observeEvent()和render*()等函数,在 “server.R “脚本中构建应用程序的逻辑和功能。
- 完成上述步骤后,你可以通过运行以下命令启动应用程序。
你需要安装Shiny , Shinythemes和ggplot2软件包,然后也要加载它们。
在加载库和模板后,你必须定义用户界面。
在定义了用户界面之后,你必须定义服务器。在定义了用户界面和服务器后,你必须创建一个闪亮的对象。
输出
闪亮的应用程序 – Tab 1
Shiny App – Tab 2
摘要
这个例子演示了如何使用Shiny包制作一个接受用户输入并显示结果的交互式Web应用。这个应用还展示了PlotGraph。在屏幕的左边,这个应用程序将显示一个滑块、下拉菜单和日期选择器。在屏幕的右边,它将显示被选中的数值。 为了创建一个更复杂的交互式用户界面和更复杂的服务器逻辑,你可以用更多的应用程序来使用其他各种Shiny函数和小工具。