r语言 - 将 ggplot 对象列表循环到模态窗口中



在我的闪亮仪表板中,我希望我的模态窗口显示 49 个 ggplot,它们都存储在列表 temp1 中。我可以让模态窗口显示任何图,如下所示:

observeEvent(input$modalTrigger1,
  {
    temp1 <- plotList(data)
     showModal(modalDialog(plotOutput("trigger1plot1")))
     output$trigger1plot1 <- renderPlot(temp1[[1]])
  }
  )

但是我想创建一个 for 循环,当按下 modalTrigger1(操作按钮(时,它将输出模态窗口中的所有 49 个图。到目前为止,我这样做的尝试都失败了,所以我将不胜感激。

谢谢。

考虑gridExtra::grid.arrange组合多个图,您甚至可以在其中指定 nrowncol。请参阅 CRAN-R 文档。

library(gridExtra)
...
observeEvent(input$modalTrigger1,
{
  temp1 <- plotList(data)
  showModal(modalDialog(plotOutput("trigger1plot1")))
  output$trigger1plot1 <- renderPlot({
      do.call(grid.arrange, temp1
      # grid.arrange(grobs = temp1)  -- ALTERNATIVE W/ gridExtra v>=2.0.0
      # do.call(grid.arrange, c(temp1, ncol=7, nrow=7))  -- WITH ROWS/COLS
  })
})

最新更新