Как исправить область пустого графика, используя highchart () и списки - PullRequest
0 голосов
/ 11 июня 2019

Использование переполнения стека: R Highcharts многоуровневая гистограмма

Я могу создать столбчатую диаграмму с накоплением, используя имеющийся у меня набор данных. Однако «типы» данных в этом наборе являются динамическими, поэтому я пытаюсь реализовать: Группировка столбцов Highcharter без использования hchart ()

Однако, хотя генерируемый мной список выглядит идентично примеру, если я загружаю и запускаю этот код, график отображается пустым. Длина правильно определяет типы, но диаграмма не заполняется. Я попытался запустить это в браузере на случай, если R studio не справилась с этим правильно, но безрезультатно.

Я попытался и работаю над частичным решением, используя: R Highcharts многоуровневая гистограмма

Однако из-за динамического типа данных мне нужно больше решения, похожего на: Группировка столбцов в Highcharter без использования hchart ()

Я сравнил списки, и они кажутся идентичными (разные данные, но структура правильная)

data <- data[!duplicated(data$AcctID), ]

data$ExpireDate <- mdy_hm(data$ExpireDate)
data$ExpireDateGroup <- floor_date(data$ExpireDate, "day")

cheeseData <- data %>%
  mutate(Day = as.character(ExpireDateGroup)) %>%
  group_by(Day, Cheese) %>%
  summarise(CheeseWheels = n())

byCheese.list <- cheeseData %>%
  group_by(Cheese) %>%
  do(cheeseData = list_parse2(.[, c('Day', 'CheeseWheels')])) %>%
  rename(name = Cheese) %>%
  mutate(Cheese = 'column') %>%
  list_parse()

highchart() %>%
  hc_xAxis(categories = cheeseData$Day) %>%
  hc_add_series_list(byCheese.list) %>%
  hc_plotOptions(series = list(stacking = 'normal'))

Ожидаемые результаты: должна быть столбчатая диаграмма с накоплением Empty Column Chart

Пример данных

    data <- structure(list(AcctID = c(251981L, 261775L, 275048L, 282754L, 
                          286490L, 279683L, 277289L, 282031L, 287776L, 284062L), CreatedDate = c("4/2/2019 18:48", 
                                                                                                 "4/18/2019 16:14", "5/10/2019 7:49", "5/22/2019 15:13", "5/29/2019 11:29", 
                                                                                                 "5/17/2019 14:05", "5/14/2019 10:32", "5/21/2019 16:59", "5/31/2019 7:56", 
                                                                                                 "5/24/2019 14:09"), ExpireDate = structure(c(1559642040, 1559642100, 
                                                                                                                                              1559642160, 1559642220, 1559642220, 1559642280, 1559642340, 1559642340, 
                                                                                                                                              1559642400, 1559642460), class = c("POSIXct", "POSIXt"), tzone = "UTC"), 
               Cheese = c("Gouda", "Gouda", "Gouda", "Gouda", "Gouda", "Gouda", 
                          "Gouda", "Gouda", "Gouda", "Gouda"), ExpireDateGroup = structure(c(1559606400, 
                                                                                             1559606400, 1559606400, 1559606400, 1559606400, 1559606400, 
                                                                                             1559606400, 1559606400, 1559606400, 1559606400), class = c("POSIXct", 
                                                                                                                                                        "POSIXt"), tzone = "UTC")), row.names = c(1L, 3L, 5L, 6L, 
                                                                                                                                                                                                  8L, 10L, 11L, 12L, 13L, 14L), class = "data.frame")
...