Shiny로 아기 이름 탐색기 앱 만들기

R로 Shiny 웹 애플리케이션 만들기

Ramnath Vaidyanathan

VP of Product Research

앱 스케치하기

시간에 따른 아기 이름을 표시하는 앱의 손그림 스케치

R로 Shiny 웹 애플리케이션 만들기

입력 추가(UI)

ui <- fluidPage(

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

}
shinyApp(ui = ui, server = server)

제목 "Baby name explorer"와 이름 "David"가 입력된 웹 앱

R로 Shiny 웹 애플리케이션 만들기

출력 추가(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)
R로 Shiny 웹 애플리케이션 만들기

출력 추가(UI/server)

제목 "Baby names explorer", 이름 "David"가 입력되고, 빈 플롯이 표시된 웹 앱

R로 Shiny 웹 애플리케이션 만들기

레이아웃 업데이트(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()})
}
R로 Shiny 웹 애플리케이션 만들기

레이아웃 업데이트(UI)

제목 "Baby names explorer", 이름 "David"가 입력되고, 왼쪽에 입력, 오른쪽에 빈 플롯이 있는 웹 앱

R로 Shiny 웹 애플리케이션 만들기

출력 업데이트(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) )
}) }

제목 "Baby names explorer", 이름 "David"가 입력되고, 왼쪽에 입력, 오른쪽에 시간에 따른 이름 빈도 플롯이 있는 웹 앱

R로 Shiny 웹 애플리케이션 만들기

연습해 봅시다!

R로 Shiny 웹 애플리케이션 만들기

Preparing Video For Download...