rCharts闪亮:宽度有2个图表

时间:2014-10-01 15:12:22

标签: r shiny rcharts

我有一个带有两个Highcharts图的应用程序,当我启动应用程序时,两个图的宽度是正确的,但每次我更改mean输入时,第一个图的宽度设置为宽度第二个,像这样:

当我启动应用时:

enter image description here

当我更改输入时:

enter image description here

我制作应用的代码:

library(rCharts)
library(shiny)

runApp(list(
  ui = fluidPage(
    title = "App title",
    titlePanel(strong("App title", style="color: steelblue")),
    sidebarLayout(
      sidebarPanel(width = 2,
                   br()),
      mainPanel(width = 10, 
                tabsetPanel(
                  tabPanel("Tab 1",
                           selectInput(inputId = "input_mean", label = "Mean : ", choices = c(20:30)),
                           fluidRow(
                             column(8,
                                    showOutput(outputId = "chart1", lib = "highcharts")
                                    , br(), br(), br(), br(), br(), br(), br(), br(), br(), br(), br()),
                             column(4,
                                    showOutput(outputId = "chart2", lib = "highcharts"))
                             )
                           )
                  )
                )
      )
    ),
  server = function(input, output) {

    my_data <- reactive({
      rnorm(n = 30, mean = as.numeric(input$input_mean))
    })

    output$chart1 <- renderChart2({
      my_data = my_data()
      h2 <- Highcharts$new()
      h2$chart(type="line")
      h2$series(data=my_data, name = "One", marker = list(symbol = 'circle'), color = "lightblue")
      h2$set(width = 800, height = 400)
      return(h2)
    })
    output$chart2 <- renderChart2({
      my_data = my_data()
      my_mean = as.numeric(input$input_mean)
      part = data.frame(V1 = c("Sup", "Inf"), V2 = c(sum(my_data>my_mean), sum(my_data<my_mean)))
      p = hPlot(x = "V1", y = "V2", data = part, type = "pie")
      p$tooltip(pointFormat = "{series.name}: <b>{point.percentage:.1f}%</b>")
      p$params$width <- 200
      p$params$height <- 200
      return(p)
    })
  }
))

我使用rCharts_0.4.5和shiny_0.9.1。

谢谢!

0 个答案:

没有答案