Добавление структуры в приложение
Макеты в Shiny позволяют задать структуру приложения, размещая элементы в нужных местах.
Боковой макет, созданный с помощью функции sidebarLayout(), обеспечивает базовую двухколоночную структуру: узкая боковая панель слева и более широкая основная панель справа.
Функция бокового макета принимает два аргумента: sidebarPanel() и mainPanel(). Каждая из этих панелей может содержать произвольное сочетание текстовых и HTML-элементов — так же, как это работает внутри fluidPage().
Это упражнение является частью курса
Примеры использования: создание веб-приложений с Shiny в R
Инструкции к упражнению
Ваша задача — добавить боковой макет в существующее приложение так, чтобы элементы ввода располагались слева, а результаты — в основной панели. Для этого вам необходимо:
- Определить пользовательский интерфейс приложения Shiny.
- Добавить боковой макет на страницу.
- Добавить боковую панель в макет и разместить в ней элементы ввода и текст.
- Добавить основную панель в макет и разместить в ней график и таблицу.
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
# Load the shiny package
library(shiny)
# Define UI for the application
ui <- ___(
# Add a sidebar layout to the application
___(
# Add a sidebar panel around the text and inputs
___(
h4("Plot parameters"),
textInput("title", "Plot title", "Car speed vs distance to stop"),
numericInput("num", "Number of cars to show", 30, 1, nrow(cars)),
sliderInput("size", "Point size", 1, 5, 2, 0.5)
),
# Add a main panel around the plot and table
___(
plotOutput("plot"),
tableOutput("table")
)
)
)
# Define the server logic
server <- function(input, output) {
output$plot <- renderPlot({
plot(cars[1:input$num, ], main = input$title, cex = input$size)
})
output$table <- renderTable({
cars[1:input$num, ]
})
}
# Run the application
shinyApp(ui = ui, server = server)