Я столкнулся с проблемой, когда Highcharts / highcharteR, кажется, игнорирует цвета отдельных точек при построении определенного числа серий.
Воспроизводимый пример:
library(highcharter)
ll <- list()
for (i in 1:50) {
ll[[i]] <- list(
name = i,
data = list_parse(
data.frame("x" = rep(i, 3),
"y" = sample(1:10, 3, replace=TRUE),
"z" = sample(1:5, 3, replace=TRUE),
"color" = sample(c("green","red","grey"), 3))
)
)
}
highchart() %>%
hc_chart(type = "bubble") %>%
hc_add_series_list(ll)
При выполнении вышеупомянутого вы увидите случайные цвета (назначенные для каждой серии) вместо явно указанных зеленых / красных / серых цветов. Изменение последней строки на hc_add_series_list( ll[1:49] )
показывает правильные заданные цвета. Я думал, что это проблема с последним элементом списка, но изменение последней строки на hc_add_series_list( ll[2:50] )
также дает правильный результат.
Создание списка только с 49 элементами (т. Е. Изменение for (i in 1:50)
на for (i in 1:49)
не имеет этой проблемы (при создании списка из 51 элемента). Кажется, что построение 50 или более рядов является своего рода обрезанием. Это ограничение highcharts / JS?