闪亮:单击按钮增加图表大小

Shiny: Increase highchart size on button click

我想在单击缩放按钮时增加高图的大小。我尝试使用下面的代码来增加大小,但到目前为止我还无法实现我想做的事情。我实际上希望 highchart 在单击缩放按钮时展开并占据整个页面。到目前为止,我已经编写了以下代码,但它似乎不起作用。谁能告诉我我做错了什么?

require(shiny)
require(rCharts)

ui <- fluidPage(


  tags$script('Shiny.addCustomMessageHandler("ZoomPlot", function(variableName){
              document.getElementById(variableName).style.height = "1000px";
              });
              '),

  headerPanel("Test app"),
  actionButton("test", "Zoom"),

  div(class = "chart-container",  showOutput("viz", "highcharts"))
)



server <- shinyServer(function(input, output, session) {
  output$viz <- renderChart2({
    a <- highchartPlot(Sepal.Length ~ Sepal.Width, data=iris)
    a
  })

  observeEvent(input$test,{
    session$sendCustomMessage(type = 'ZoomPlot', message = "viz")
  })
})

shinyApp(ui, server)

你可以像

那样只使用服务器端
server <- shinyServer(function(input, output, session) {
  hh=reactive({
    if(input$test>0 ) {1000}else{400}
   })
  output$viz <- renderChart2({
    a <- highchartPlot(Sepal.Length ~ Sepal.Width, data=iris)
    a$set(height = hh()
          )
    a
  })

})