r shiny rcharts

Cambia automáticamente el tamaño de rChart en brillante



shiny rcharts (2)

Estoy usando highcharts y agregando código HTML justo después de que la función showOutput funcionó para mí.

#ui.R. require(rCharts) shinyUI(shinyUI(fluidPage( titlePanel("title panel"), sidebarLayout( sidebarPanel("sidebar panel"), mainPanel("main panel", showOutput("chart1", ''highcharts''), HTML(''<style>.rChart {width: 100%; height: 600px}</style>'')) ) ) ))

Espero que esto ayude...

¿Cómo puedo cambiar automáticamente el tamaño de un gráfico de rChart en brillante? Me gustaría ajustar la trama a la pantalla del usuario, como se hace para trazados regulares con renderPlot. Aquí hay un ejemplo mínimo:

#Server.R require(rCharts) shinyServer(function(input, output) { output$chart1 <- renderChart2({ r1 <- rPlot(mpg ~ wt | am + vs, data = mtcars, type = "point", color = "gear") return(r1) }) }) #ui.R. require(rCharts) options(RCHART_LIB = ''polycharts'') shinyUI(shinyUI(fluidPage( titlePanel("title panel"), sidebarLayout( sidebarPanel("sidebar panel"), mainPanel("main panel", chartOutput("chart1", ''polycharts'')) ) ) ))

Intenté agregar:

w <- session$clientData$output_chart1_width r1$set(width = w)

Pero no funciona.


Casi había llegado: el chartOutput de chartOutput no pasa su tamaño, por lo que la solución es usar un objeto plotOutput para hacer esto.

Aquí hay una solución que funciona para mí:

#server.R require(rCharts) shinyServer(function(input, output, session) { output$chart1 <- renderChart2({ r1 <- rPlot(mpg ~ wt | am + vs, data = mtcars, type = "point", color = "gear") r1$set(width = session$clientData$output_plot1_width) return(r1) }) }) #ui.R require(rCharts) options(RCHART_LIB = ''polycharts'') shinyUI(shinyUI(fluidPage( titlePanel("title panel"), sidebarLayout( sidebarPanel("sidebar panel"), mainPanel("main panel", plotOutput("plot1", height = "1px"), chartOutput("chart1", ''polycharts'') ) ) ) ))

Nota: aquí hay otro ejemplo que escribí con un gráfico de tipo nvd3: https://gist.github.com/nassimhaddad/3057e9ac687591fa5138