新增表格輸出
在 Shiny 應用程式中加入任何輸出時,你需要:
- 建立輸出(圖、表、文字等)。
- 使用適當的
render___函式來「繪製」輸出物件。 - 將繪製後的物件指定給
output$x。 - 使用對應的
___Output函式將輸出加入 UI。
在這個練習中,你會把表格輸出加入先前建立的嬰兒名字探索應用程式。別忘了,render___ 函式中的程式碼需要用大括號包起來(例如 renderPlot({...}))。
本練習屬於課程
使用 R 的 Shiny 建立網頁應用程式
練習說明
- 建立名為
table_top_10_names的表格輸出,內容為依性別與年份的前 10 名熱門名字。你可以使用top_10_names()這個函式產生要顯示的資料框。 - 在 UI 中顯示該表格。
動手互動練習
試著完成這個範例程式碼,體驗一下這個練習。
ui <- fluidPage(
titlePanel("What's in a Name?"),
# Add select input named "sex" to choose between "M" and "F"
selectInput('sex', 'Select Sex', choices = c("F", "M")),
# Add slider input named "year" to select year between 1900 and 2010
sliderInput('year', 'Select Year', min = 1900, max = 2010, value = 1900)
# CODE BELOW: Add table output named "table_top_10_names"
)
server <- function(input, output, session){
# Function to create a data frame of top 10 names by sex and year
top_10_names <- function(){
babynames %>%
filter(sex == input$sex) %>%
filter(year == input$year) %>%
slice_max(prop, n = 10)
}
# CODE BELOW: Render a table output named "table_top_10_names"
}
shinyApp(ui = ui, server = server)