CommencezCommencez gratuitement

Utilisez vos propres mots

La fonction textAreaInput() est utile lorsque vous voulez permettre à l'utilisateur d'entrer un texte beaucoup plus long que ce qu'un textInput() classique permet. Les zones de texte s'étendent sur plusieurs lignes et comportent une barre de défilement verticale, ainsi qu'un paramètre rows qui détermine combien de lignes sont visibles.

À part leur taille plus grande, les entrées de type zone de texte se comportent de façon très similaire aux champs de texte pour tout le reste.

Cette activité fait partie du cours

Études de cas : créer des applications Web avec Shiny en R

Voir le cours

Instructions de l’exercice

Votre tâche consiste à ajouter une zone de texte pour permettre à l'utilisateur de créer un nuage de mots à partir de ses propres mots. Plus précisément :

  • Ajoutez une zone de texte contenant 7 lignes avec un inputId « text » et l'étiquette « Enter text ».
  • Utilisez la valeur de cette zone de texte comme source data pour le nuage de mots, plutôt que le livre artofwar (ligne 20).

Exercice interactif pratique

Essayez cet exercice en complétant ce code d’exemple.

ui <- fluidPage(
  h1("Word Cloud"),
  sidebarLayout(
    sidebarPanel(
      # Add a textarea input
      ___,
      numericInput("num", "Maximum number of words",
                   value = 100, min = 5),
      colourInput("col", "Background color", value = "white")
    ),
    mainPanel(
      wordcloud2Output("cloud")
    )
  )
)

server <- function(input, output) {
  output$cloud <- renderWordcloud2({
    # Use the textarea's value as the word cloud data source
    create_wordcloud(data = ___, num_words = input$num,
                     background = input$col)
  })
}

shinyApp(ui = ui, server = server)
Modifier et exécuter le code