Phóng to biểu đồ của bạn
Tương tự như các hàm input có thể có những đối số khác nhau tùy loại input, các hàm vùng chứa output cũng có các đối số khác nhau để điều chỉnh cách hiển thị hoặc hành vi của chúng.
Ví dụ, khi hiển thị một biểu đồ trong ứng dụng Shiny bằng plotOutput(), chiều cao mặc định của biểu đồ là 400 pixel. Hàm plotOutput() có một số tham số dùng để thay đổi chiều cao hoặc chiều rộng của biểu đồ.
Bài tập này là một phần của khóa học
Nghiên cứu tình huống: Xây dựng ứng dụng web với Shiny trong R
Hướng dẫn bài tập
Mã cho ứng dụng Shiny từ bài tập trước đã được cung cấp. Nhiệm vụ của bạn là làm cho biểu đồ lớn hơn. Cụ thể:
- 600 pixel chiều cao và 600 pixel chiều rộng. Bạn có thể xem tài liệu
plotOutput()để biết cần dùng tham số nào (dòng 18).
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(
sidebarLayout(
sidebarPanel(
textInput("title", "Title", "GDP vs life exp"),
numericInput("size", "Point size", 1, 1),
checkboxInput("fit", "Add line of best fit", FALSE),
colourInput("color", "Point color", value = "blue"),
selectInput("continents", "Continents",
choices = levels(gapminder$continent),
multiple = TRUE,
selected = "Europe"),
sliderInput("years", "Years",
min(gapminder$year), max(gapminder$year),
value = c(1977, 2002))
),
mainPanel(
# Make the plot 600 pixels wide and 600 pixels tall
plotOutput("plot", ___, ___)
)
)
)
# Define the server logic
server <- function(input, output) {
output$plot <- renderPlot({
data <- subset(gapminder,
continent %in% input$continents &
year >= input$years[1] & year <= input$years[2])
p <- ggplot(data, aes(gdpPercap, lifeExp)) +
geom_point(size = input$size, col = input$color) +
scale_x_log10() +
ggtitle(input$title)
if (input$fit) {
p <- p + geom_smooth(method = "lm")
}
p
})
}
shinyApp(ui = ui, server = server)