Alege sursa de date (ui)
În ultimele exerciții, ai folosit 3 surse diferite pentru norul de cuvinte: cartea Arta Războiului, un câmp de text și un fișier text. Însă, la un moment dat, funcționa doar câte o singură sursă. În acest exercițiu, îi vei oferi utilizatorului posibilitatea de a alege ce sursă de date să folosească pentru norul de cuvinte.
Acest exercițiu face parte din cursul
Studii de caz: Construirea aplicațiilor web cu Shiny în R
Instrucțiuni pentru exercițiu
Sarcina ta este să adaugi butoane radio în aplicație, care să îi permită utilizatorului să aleagă dacă sursa de cuvinte va fi cartea Arta Războiului, zona de text sau un fișier încărcat. Mai exact:
- Adaugă un input cu butoane radio cu eticheta "Word source" care să aibă trei opțiuni:
- Valorile opțiunilor trebuie să fie "book", "own" și "file". Numele afișate utilizatorului trebuie să fie, respectiv, "Art of War", "Use your own words" și "Upload a file".
Exercițiu interactiv practic
Încearcă acest exercițiu completând acest cod de exemplu.
ui <- fluidPage(
h1("Word Cloud"),
sidebarLayout(
sidebarPanel(
# Add radio buttons input
___(
inputId = "source",
label = ___,
choices = c(
# First choice is "book", with "Art of War" displaying
"Art of War" = "book",
# Second choice is "own", with "Use your own words" displaying
___ = "own",
# Third choice is "file", with "Upload a file" displaying
___ = ___
)
),
textAreaInput("text", "Enter text", rows = 7),
fileInput("file", "Select a file"),
numericInput("num", "Maximum number of words",
value = 100, min = 5),
colourInput("col", "Background color", value = "white")
),
mainPanel(
wordcloud2Output("cloud")
)
)
)
server <- function(input, output) {
input_file <- reactive({
if (is.null(input$file)) {
return("")
}
readLines(input$file$datapath)
})
output$cloud <- renderWordcloud2({
create_wordcloud(input_file(), num_words = input$num,
background = input$col)
})
}
shinyApp(ui = ui, server = server)