Shiny 应用入门
在 R 中构建交互式 Web 应用,与相关人员分享数据洞察
Shiny 应用入门 是 CoddyKit 上的免费 R Academy 课时。 这是第 2 节课,共 3 节。 你可以在下方免费阅读本课时的完整内容 — 然后在浏览器中使用内置代码编辑器和全天候 AI 导师进行实践。 这是 R Academy 学习路径的一部分,你的进度在网页和 CoddyKit 应用中同步。 R Academy 课程共包含 3 节课。
什么是 Shiny
Shiny 应用简介
Shiny 是一个 R 包,可让您直接使用 R 构建交互式 Web 应用。它广泛用于数据可视化和报告生成。

安装和加载 Shiny
安装和加载 Shiny
在使用 Shiny 之前,请先安装并加载该包。
install.packages('shiny')
library(shiny)Shiny 应用的基本结构
Shiny 应用的基本结构
Shiny 应用由两个主要部分组成:
- UI(用户界面):定义布局和外观。
- 服务器:包含逻辑和计算过程。
创建一个简单的 Shiny 应用
创建一个简单的 Shiny 应用
使用 shinyApp() 创建基础的交互式应用。
library(shiny)
ui <- fluidPage(
titlePanel('Hello Shiny!'),
sidebarLayout(
sidebarPanel(sliderInput('num', 'Choose a number:', 1, 100, 50)),
mainPanel(textOutput('value'))
)
)
server <- function(input, output) {
output$value <- renderText({ paste('You selected:', input$num) })
}
shinyApp(ui = ui, server = server)添加响应式元素
添加响应式元素
当输入发生变化时,响应式表达式会自动更新。
server <- function(input, output) {
reactive_text <- reactive({ paste('Your number squared is:', input$num^2) })
output$value <- renderText({ reactive_text() })
}创建交互式图表
创建交互式图表
使用 renderPlot() 显示交互式图表。
server <- function(input, output) {
output$plot <- renderPlot({
hist(rnorm(input$num), col='blue', main='Random Histogram')
})
}运行 Shiny 应用
运行 Shiny 应用
将脚本保存为 app.R,然后使用 shiny::runApp() 运行它。
部署 Shiny 应用
部署 Shiny 应用
您可以使用 shinyapps.io 在线部署 Shiny 应用,也可以将其托管在 Shiny 服务器上。
Shiny 应用总结
总结
在本课中,您学习了:
- 如何创建和组织 Shiny 应用。
- 如何使用响应式元素实现交互功能。
- 如何在线部署 Shiny 应用。

常见问题解答
「Shiny 应用入门」课时是免费的吗?
是的 — 「Shiny 应用入门」的完整文本可在网页上免费阅读。要进行交互式练习(内置代码编辑器和全天候 AI 导师)并解锁 R Academy 课程的其余内容,请升级到 CoddyKit PRO。 R Academy 课程共包含 3 节课。
「Shiny 应用入门」这节课中我会学到什么?
在 R 中构建交互式 Web 应用,与相关人员分享数据洞察 你通过在浏览器中直接运行的动手代码来练习 R Academy,全天候 AI 导师会在你学习这节课的过程中回答你的问题。
学习 R Academy 需要有经验吗?
无需任何先前经验。CoddyKit 上的 R Academy 课程适合初学者到高级学习者,你可以从这里开始或从头开始,按照自己的节奏学习。 这是第 2 节课,共 3 节。
「Shiny 应用入门」课时需要多长时间?
大多数 CoddyKit 课程大约需要 5–10 分钟。每节课都很精短且互动,所以你能稳步进步,并在网页和应用中从离开的地方继续。
我能在这节 R Academy 课中编写并运行代码吗?
能。每节 R Academy 课都包含内置代码编辑器,你可以在浏览器中直接编写并运行真实代码,并获得即时 AI 反馈 — 无需本地设置。
此课程中的所有课时
- R Markdown 基础
- Shiny 应用入门
- 部署与最佳实践