У меня есть 3 разных географических уровня в моем ui.R: глобальный уровень (Уровень 1), который содержит 3 суб-уровня (Уровень 2), каждый уровень содержит 3 под уровня (Уровень 3).Иерархия checkboxGroupInput
3 первых уровня уровня 3 содержатся на первом уровне уровня 2, следующие 3 уровня уровня 3 содержатся на втором уровне уровня 2, последние 3 уровня уровня 3 содержатся в третий уровень уровня 2.
Как я могу установить все флажки, когда установлен флажок уровня 1? И если я проверю 3 первых уровня уровня 3, то как автоматически получить первый уровень уровня 2.
Вот код УИ:
library(shiny)
shinyUI(navbarPage("RP 2014",
tabPanel("Sélection",
print (h4(strong("Geographical levels"))),
fluidRow(
column(width = 3,
h5(strong("Level 1")),
checkboxInput("dynamic_L1",
label = "")
), # f. column
column(width = 3,
checkboxGroupInput("dynamic_L2",
label = h5(strong("Level 2")),
choices = list("L2_1" = "Level 2-1",
"L2_2" = "Level 2-2",
"L2_3" = "Level 2-3"))
),
column(width = 3,
checkboxGroupInput("dynamic_L3",
label = h5(strong("Level 3")),
choices = list("L3_1" = "Level 3-1",
"L3_2" = "Level 3-2",
"L3_3" = "Level 3-3",
"L3_4" = "Level 3-4",
"L3_5" = "Level 3-5",
"L3_6" = "Level 3-6",
"L3_7" = "Level 3-7",
"L3_8" = "Level 3-8",
"L3_9" = "Level 3-9"))
)
)
)
)
)
Я надеюсь, что мой вопрос понятен, спасибо за помощь.
У меня нет полного ответа, но я бы начать иметь взгляд на использовании 'reactive' функцию, которая будет вызвана при данных обстоятельствах вы описываете, содержащий' updateCheckboxGroupInput 'функция для изменения выбранных входов. – rosscova
Вы проверили пакет [shinytree] (https://cran.r-project.org/web/packages/shinyTree/README.html)? –
Используйте комбинацию 'oberserveEvent' и' updateCheckboxGroupInput' –