【发布时间】:2017-11-30 13:29:29
【问题描述】:
如果满足条件,我希望能够显示一些内容,我非常感谢一些帮助。我认为我很接近,但需要提升。我希望能够显示:
- content1 if class(iris$ .. ) = "numeric" _ content2 if class(iris$ .. ) = "factor"
到目前为止,这是我的代码:
library(shiny)
ui = navbarPage(
"TEST",
tabPanel("Iris data",
uiOutput("tabs"),
conditionalPanel(condition = "input.level==1",
helpText("content1")
),
conditionalPanel(condition = "input.level==5",
helpText("content2")
)
)
)
server = function(input, output, session) {
output$tabs = renderUI({
Tabs <- as.list(colnames(iris))
Tabs_type <- lapply(iris, function(x) class(x))
for (i in 0:length(Tabs)){
Tabs[i] = lapply(paste(Tabs[i], sep=" "),tabPanel, value = Tabs_type[[i]])
}
do.call(tabsetPanel, c(Tabs, id = "value"))
})
}
shinyApp(ui, server)
不知道怎么把id改成class(iris$ ...)
提前感谢您的帮助
【问题讨论】:
-
请看我对this question的回复。我希望这会有所帮助
-
嘿,我看到了你的答案,但我似乎无法更改每个 tabapanel 的 id 以对其有条件!
标签: r tabs shiny conditional-statements