Shiny: динамическое количество выходных элементов / графиков
Я хочу сделать реактивный дисплей, чтобыотображает различное количество графиков в зависимости от того, какое значение селектора ввода выбрано, В случае набора данных mtcars, скажем, я хочу позволить пользователю выбирать между резкой по Nr. Gears или Nr. Carburatos для участков, которые будут произведены.
Смотря наunique(mtcars$gear)
мы видим, что это имеет4 3 5
так что 3 возможных значения, аunique(mtcars$carb)
имеет4 1 2 3 6 8
итак 6 возможных значений. Поэтому я хочу производить 6 отдельных участков, когдаNr. of Carburators
выбран и только 3 участка, когдаNr. of Gears
выбран. Я играл сconditionalPanel
но это неизменно взрывается после того, как я переключаюсь между селекторами один или два раза. Помогите?
Блестящий интерфейс:
library(shiny)
library(googleVis)
shinyUI(bootstrapPage(
selectInput(inputId = "choosevar",
label = "Choose Cut Variable:",
choices = c("Nr. of Gears"="gear",
"Nr. of Carburators"="carb")),
htmlOutput('mydisplay') ##Obviously I'll want more than one of these...
# conditionalPanel(...)
))
Блестящий сервер:
shinyServer(function(input, output) {
#Toy output example for one out of 3 unique gear values:
output$mydisplay <- renderGvis({
gvisColumnChart(
mtcars[mtcars$gear==4,], xvar='hp', yvar='mpg'
)
})
})