Xây dựng ứng dụng Shiny khám phá tên em bé

Xây dựng ứng dụng web với Shiny trong R

Ramnath Vaidyanathan

VP of Product Research

Phác thảo ứng dụng của bạn

Phác thảo máy tính về ứng dụng hiển thị tên em bé theo thời gian

Xây dựng ứng dụng web với Shiny trong R

Thêm input (UI)

ui <- fluidPage(

titlePanel("Baby Name Explorer"),
textInput('name', 'Enter Name', 'David')
)
server <- function(input, output, session){

}
shinyApp(ui = ui, server = server)

Ứng dụng web tiêu đề "Baby name explorer" và tên "David" đã nhập

Xây dựng ứng dụng web với Shiny trong R

Thêm output (UI/server)

ui <- fluidPage(
  titlePanel("Baby Name Explorer"),
  textInput('name', 'Enter Name', 'David'),

plotOutput('trend')
)
server <- function(input, output, session){

output$trend <- renderPlot({ ggplot() })
}
shinyApp(ui = ui, server = server)
Xây dựng ứng dụng web với Shiny trong R

Thêm output (UI/server)

Ứng dụng web tiêu đề "Baby names explorer", nhập tên "David", và hiển thị biểu đồ trống

Xây dựng ứng dụng web với Shiny trong R

Cập nhật bố cục (UI)

ui <- fluidPage(
  titlePanel("Baby Name Explorer"),

sidebarLayout(
sidebarPanel(
textInput('name', 'Enter Name', 'David')
),
mainPanel(
plotOutput('trend')
)
)
)
server <- function(input, output, session){
  output$trend <- renderPlot({ggplot()})
}
Xây dựng ứng dụng web với Shiny trong R

Cập nhật bố cục (UI)

Ứng dụng web tiêu đề "Baby names explorer", nhập tên "David", và hiển thị biểu đồ trống; ô nhập tên bên trái, biểu đồ trống bên phải

Xây dựng ứng dụng web với Shiny trong R

Cập nhật đầu ra (server)

ui <- fluidPage(
  ...
)
server <- function(input, output, session){
  output$trend <- renderPlot({

data_name <- subset( babynames, name == input$name )
ggplot(data_name) + geom_line( aes(x = year, y = prop, color = sex) )
}) }

Ứng dụng web tiêu đề "Baby names explorer", nhập tên "David", và hiển thị biểu đồ tần suất theo thời gian; ô nhập tên bên trái, biểu đồ bên phải

Xây dựng ứng dụng web với Shiny trong R

¡Vamos a practicar!

Xây dựng ứng dụng web với Shiny trong R

Preparing Video For Download...