MultiBarChart с HighCharter в блестящем приложении - PullRequest
0 голосов
/ 16 марта 2019

Есть ли способ построить график, подобный этому, с пакетом highcharter в приложении Shiny?

https://www.highcharts.com/demo/column-stacked-and-grouped

Вот мои данные:

names <- c("Sr. Blue","Sr. Green","Sr. Brown","Sr. Yellow","Sr. Purple","Sr. Fish","Sr. Greek","Sr. Red","Sr. Dark")
names <- names[rep(seq_len(length(names)), each=5)]
teachers <- data.frame(name = names, age = rep(c("0-4","4-9","9-15","15-20","+20"),9),students = sample(1:50,45))

Цель состоит в том, чтобы показать учащимся ~ имена, сгруппированные по возрасту.

1 Ответ

0 голосов
/ 19 марта 2019

Вот пример того, как построить график столбцов в Highcharts (Highcharter) и Shiny:

library(shiny)
library(highcharter)
ui <- fluidPage(
  h1("Highcharts Shiny stacked column demo"),
  fluidRow(
    column(width = 12, highchartOutput("hcontainer",height = "500px"))
  )
)
server = function(input, output) {
  output$hcontainer <- renderHighchart({
    hc <- highchart() %>%
      hc_chart(type = 'column') %>%
      hc_xAxis(categories = c('Apples', 'Oranges', 'Pears', 'Grapes', 'Bananas')) %>%
      hc_plotOptions(series = list(stacking = 'normal')) %>%
      hc_add_series(
        name = 'John',
        data = list(5, 3, 4, 7, 2),
        stack = 'male'
      ) %>%
      hc_add_series(
        name = 'Joe',
        data = list(3, 4, 4, 2, 5),
        stack = 'male'
      ) %>%
      hc_add_series(
        name = 'Jane',
        data = list(2, 5, 6, 2, 1),
        stack = 'female'
      ) %>%
      hc_add_series(
        name = 'Janet',
        data = list(3, 0, 4, 4, 3),
        stack = 'female'
      )
    hc
  })
}
shinyApp(ui = ui, server = server)

Я не разработчик R, поэтому я не знаю, как именно выглядят ваши данные,но если вы дадите мне более подробную информацию о категориях x, именах серий и значениях y, я постараюсь помочь с завершением вашей диаграммы и отредактировать свой ответ.

Вот чистый код JS приведенной выше диаграммы: https://jsfiddle.net/BlackLabel/wgthu2L5

И некоторые API ссылки могут быть полезны: https://api.highcharts.com/highcharts/plotOptions.series.stacking https://api.highcharts.com/highcharts/series.column.stack https://api.highcharts.com/highcharts/xAxis.categories

...