Я думаю, что ответ на первый вопрос, как указал @jbkunst здесь , заключается в том, что каждое значение является 0-индексным в первой категории при добавлении их в виде отдельных рядов. Я не уверен, возможно ли указать индекс для второго индекса. Я попытался добавить [1]
, но не сработало.
С точки зрения второго вопроса, ключ должен включать аргумент isSum
. Однако проблема в том, что расчет идет только слева направо. Вот что я имею в виду: если isSum = c(FALSE,FALSE,FALSE,FALSE,TRUE)
, то D
станет 23
, что является суммой предыдущих четырех значений. Теперь, если isSum = c(TRUE,FALSE,FALSE,FALSE,FALSE)
, тогда Total
станет 0
, потому что перед ним нет номера.
При этом найденный мной рабочий раствор двигал Total
в конец:
df2 = data.frame(Name = c("A","B","C","D","Total"),
Value = c(5,9,-1,-3,10))
a = c(FALSE,FALSE,FALSE,FALSE,TRUE)
df2= df2 %>%
mutate(color = ifelse(df2$Value>=0,"green",ifelse(df2$Value<0,"red",NA)))
highchart() %>%
hc_xAxis(type = "category") %>%
hc_add_series(data = df2, type = "waterfall", hcaes(x = Name, y= Value, isSum = a, color = df2$color))