我想输出多个表作为一个uiOutput。如果我使用循环将它们放在一个列表中,那么所有输出都等于最后一个。 实施例:r有光泽的renderUI在循环中
library(shiny)
ui <- fluidPage(
mainPanel(
uiOutput("tables")
)
)
server <- function(input, output) {
output$tables <- renderUI({
data=array(rnorm(150),c(10,5,3))
tfc = function(m){
# x = m[1,1]
renderTable({m})
}
result=list()
for(i in 1:3)
result[[i]] = tfc(data[,,i])
return(result)
})
}
shinyApp(ui = ui, server = server)
如果删除了注释行(X = M [1,1])我获得所需的结果。
我可以接受这种解决方法,但是为什么有光泽表现得像这样或者有没有其他方法可以做到这一点?