R 在tabsetpanel中创建表的动态数量
我试图在tabsetPanel参数中创建动态数量的数据表。多亏了这里各种各样的帖子,我找到了这个“不起作用的解决方案” 表已正确呈现和访问,但tabsetPanel无法创建,我想知道如何才能使其正常工作,欢迎提供任何帮助:R 在tabsetpanel中创建表的动态数量,r,shiny,R,Shiny,我试图在tabsetPanel参数中创建动态数量的数据表。多亏了这里各种各样的帖子,我找到了这个“不起作用的解决方案” 表已正确呈现和访问,但tabsetPanel无法创建,我想知道如何才能使其正常工作,欢迎提供任何帮助: library(DT) # for simplification this is not dynamic but created without hardcoded variable calls. portalData <- lapply(1:10,functi
library(DT)
# for simplification this is not dynamic but created without hardcoded variable calls.
portalData <- lapply(1:10,function(x)data.frame(rnorm(5,1))
names(portalData) <- 1:10
shinyApp(
ui = pageWithSidebar(
headerPanel("Dynamic number of tables inside tabpanels"),
sidebarPanel(
),
mainPanel(
uiOutput("tables")
)
),
server = function(input, output) {
observe({
output$tables <- renderUI({
names_list <- lapply(seq_along(portalData), function(i){
tablename <- paste(names(portalData)[i])
tabPanel(dataTableOutput(tablename))
})
do.call(tabsetPanel,do.call(tagList, names_list))
})
for(i in 1:length(portalData)){
local({
i2 <- i
output[[names(portalData)[i2]]] <- renderDataTable({portalData[[i2]]})
})
}
})
})
库(DT)
#为了简化,这不是动态的,而是在没有硬编码变量调用的情况下创建的。
portalData是否认为已解决此问题?请将您的解决方案作为答案发布。很抱歉造成混淆,问题仍然存在。没有弄清楚如何在数据表周围放置tabPanel。是否尝试创建动态数量的tabPanel,每个tabPanel都包含一个表?是的,完全正确。虽然我不确定我的思路是否正确,但是有一个问题:tabPanel
需要一个标题值,否则它不会被识别为tab。所以试试tabPanel(粘贴0(“tab-”,i)、dataTableOutput(tablename))
或类似的东西。