【发布时间】:2016-09-28 00:05:00
【问题描述】:
我有一个类似于此示例的data.frame:
> head(dd)
# paths counts
#1 s 4735
#2 dt 4635
#3 so 2191
#4 sb 1949
#5 dt-dt 1310
#6 s-s 978
路径中的不同步骤由- 分隔。如您所见,有些路径的长度为 1,有些则 > 1 步(示例中最多为 5 步)。
现在我想使用sunburstR 包将数据可视化为sunburst 图。我是这样做的:
# devtools::install_github("timelyportfolio/sunburstR")
library(sunburstR)
sunburst(dd)
不幸的是,这不会产生任何输出,我不明白为什么。作为另一个示例,这可以按预期工作:
sunburst(tail(dd, 8))
但这不是:
sunburst(tail(dd, 9))
我也注意到了
sunburst(dd[c(5, 1:4),])
产生了一个情节,但令人惊讶的是,dt 类别被分成两个块,通常应该在第一层(最内层)显示为一个块。
问:有人可以向我解释为什么会发生这种情况(有些方法有效,有些无效,有些有效,但显示的数据有些不正确)以及我需要做什么来可视化整个数据集(不仅仅是样本数据)?
样本数据
dd <- structure(list(paths = c("s", "dt", "so", "sb", "dt-dt", "s-s",
"so-dt", "dt-dt-dt", "sb-sb", "so-so", "s-s-s", "s-rd", "dt-dt-dt-dt",
"s-sb", "a", "so-dt-dt", "s-rd-rd", "r", "dt-s", "so-sb", "dt-sb",
"s-rd-rd-rd", "dt-rd", "dt-dt-dt-dt-dt", "so-dt-dt-dt"), counts = c(4735L,
4635L, 2191L, 1949L, 1310L, 978L, 558L, 455L, 324L, 281L, 266L,
231L, 208L, 200L, 200L, 196L, 156L, 150L, 142L, 129L, 123L, 114L,
113L, 113L, 100L)), .Names = c("paths", "counts"), class = "data.frame", row.names = c(NA, -25L))
【问题讨论】:
-
可能是因为双(子)序列而窒息?例如。
s-rd-rd是s-rd-rd-rd的一部分。 -
@lukeA,谢谢,这可能是真的。我会试着调查一下。但是,对于我的数据而言,
s-rd-rd和s-rd-rd-rd仅在前 3 个级别相等但在第 4 个级别不同,因此我不能将它们合并为一个类别 -
我认为包作者在这种情况下会附加一个额外的
-end。 -
@lukeA,是的,我只是做了同样的事情,一切似乎都正常。想发布答案吗?
标签: r plot sunburst-diagram