ПочатиПочніть безкоштовно

Додайте макет

Як ви бачили в попередніх розділах, використання макета в застосунку Shiny допомагає впорядкувати інтерфейс і зробити його зручнішим.

Зараз у застосунку небагато об'єктів (один заголовок, два вводи, один результат — хмара слів), тож без макета ще можна впоратися. Однак у наступних вправах застосунок зростатиме, і наявність макета з бічною панеллю буде корисною. Краще додати макет раніше, адже вставляти нові елементи інтерфейсу Shiny в уже наявну структуру простіше, ніж пізніше переробляти великий неструктурований застосунок.

Як це зазвичай роблять у Shiny та інших інтерактивних застосунках, елементи вводу тримайте в меншій бічній панелі, а основний результат (хмара слів) — у більшій головній панелі.

Ця вправа є частиною курсу

Case Studies: створення вебзастосунків із Shiny в R

Переглянути курс

Інструкції до вправи

Ваше наступне завдання — додати макет із бічною панеллю до поточного застосунку Shiny. Не додавайте нових елементів інтерфейсу, окрім структури самого макета. Зокрема:

  • Додайте до UI макет із бічною панеллю.
  • Усередині цього макета визначте бічну панель, у якій розмістіть два елементи вводу.
  • Також у межах цього макета визначте головну панель, що міститиме результат — хмару слів (рядок 12).

Інтерактивна практична вправа

Спробуйте виконати цю вправу, доповнивши цей зразок коду.

ui <- fluidPage(
  h1("Word Cloud"),
  # Add a sidebar layout to the UI
  ___(
    # Define a sidebar panel around the inputs
    ___(
      numericInput("num", "Maximum number of words",
                   value = 100, min = 5),
      colourInput("col", "Background color", value = "white")
    ),
    # Define a main panel around the output
    ___(
      wordcloud2Output("cloud")
    )
  )
)

server <- function(input, output) {
  output$cloud <- renderWordcloud2({
    create_wordcloud(artofwar,
                     num_words = input$num, background = input$col)
  })
}

shinyApp(ui = ui, server = server)
Редагувати та запускати код