我的闪亮应用程序本质上会基于所选的selectInput
生成多个标题和图表。但是,由于代码是非常重复的,所以我设法使用函数将每个绘图的主要组件简化为4个函数。我想更进一步,从一个函数中调用这四个函数。
我简化为的四个函数以及生成输出的代码是:
panel1Data <- reactive({
panelData(1)
})
output$panel1header <- renderUI({
panelHeader(1)
})
output$panel1definition <- renderUI({
panelDefinition(1)
})
output$panel1plot <- renderPlot({
panelPlot(panel1Data(), 1)
})
我试图将其进一步简化为一行:
panel1Data <- reactive({
panelData(1)
})
panels <- function(data, header, definition, plot, number){
header <- renderUI({
panelHeader(number)
})
output$definition <- renderUI({
panelDefinition(number)
})
output$plot <- renderPlot({
panelPlot(data, number)
})
}
panels(panel1Data(), output$panel1header, output$panel1definition, output$panel1plot, 1)
但是,这不会生成输出。我猜这是因为函数不仅是简单的文本替换,而且任何帮助将不胜感激。