R заговор солнечных лучей возвращается пустым;all.equal == TRUE, идентично == FALSE - PullRequest
0 голосов
/ 05 ноября 2019

Я пытаюсь создать построенную диаграмму солнечных лучей:

> library(plotly)
> packageVersion("plotly")
[1] ‘4.9.0’
# Generate anonymized version of my data
labs <- c("Total", LETTERS[1:5], paste0(letters[1:5], 1), paste0(letters[c(1,4)], 2))
pars <- c("", "Total", "Total", "Total", "Total", "Total", LETTERS[1:5], LETTERS[c(1,4)])
vals <- c(8.71, 2.75, 1.37, 0.84, 3.55, 0.20, 2.45, 1.37, 0.84, 2.95, 0.20, 0.30, 0.60)

# Give me the sunburst
p <- plot_ly(
         labels = labs,
         parents = pars,
         values = vals,
         type = 'sunburst',
         branchvalues = "total")
p

[возвращает пустой график]

Это должно быть потому, что значения не складываются. С branchvalues ​​= "total", сюжетно хочет, чтобы дети складывались в точности с родителями. Если вы измените значения филиалов = «остаток», это работает.

Что ?? Они должны сложить. Я в растерянности.

> vals[1]
[1] 8.71
> sum(vals[2:6])
[1] 8.71
> sum(vals[7:13])
[1] 8.71

Но тогда:

> all.equal(vals[1], sum(vals[2:6]))
[1] TRUE
> identical(vals[1], sum(vals[2:6]))
[1] FALSE

> all.equal(sum(vals[7:13]), sum(vals[2:6]))
[1] TRUE
> identical(sum(vals[7:13]), sum(vals[2:6]))
[1] FALSE
...