Thêm một đầu ra dạng bảng
Để thêm bất kỳ đầu ra nào vào một ứng dụng Shiny, bạn cần:
- Tạo đầu ra (biểu đồ, bảng, văn bản, v.v.).
- Render đối tượng đầu ra bằng hàm
render___phù hợp. - Gán đối tượng đã render cho
output$x. - Thêm đầu ra vào UI bằng hàm
___Outputphù hợp.
Trong bài tập này, bạn sẽ thêm một đầu ra dạng bảng vào ứng dụng khám phá tên em bé mà bạn đã tạo trước đó. Đừng quên rằng mã bên trong một hàm render___ cần được đặt trong dấu ngoặc nhọn (ví dụ: renderPlot({...})).
Bài tập này là một phần của khóa học
Xây dựng ứng dụng web với Shiny trong R
Hướng dẫn bài tập
- Tạo một đầu ra bảng tên là
table_top_10_names, hiển thị 10 tên phổ biến nhất theo giới tính và năm. Bạn có thể dùng hàmtop_10_names()để tạo data frame để hiển thị. - Hiển thị bảng trong UI.
Bài tập tương tác thực hành trực tiếp
Hãy thử làm bài tập này bằng cách hoàn thành đoạn mã mẫu này.
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)