我是R的新手,并试图使用示例数据使用rCharts创建一个Sankey图。
我已经this code运行了,它按预期运行。但是,当我使用源,目标和值向量编辑该代码时,R崩溃并且不生成图表。
以下是我试图代替上述示例的来源,目标和价值观点:
source <- c('2', '5', '5')
target <- c('4', '2', '5')
value <- c(1, 1, 1)
为清楚起见,这是我使用我的数据制作的一个较小的例子:
GeneralizeTask()
这也崩溃了。我对Sankey Diagrams的理解是,这应该产生一个图表,其中&#39; 2&#39;流向&#4;&#39;和&#39; 5&#39;流向&#39; 2&#39;和&#39; 5&#39;用相同厚度的线。
我假设数据本身存在问题,因为我尝试使用与我见过的其他示例相同的格式。如果有人能够解释我在这里理解的错误,那将非常感激!
答案 0 :(得分:1)
这也崩溃了。
由于自循环5到5而崩溃,这没有任何意义。名称为5的节点应位于源端或目标端。
我对Sankey Diagrams的理解就是这个 应该产生一个图表,其中'2'流向'4','5'流向'2' 并且'5'具有相同厚度的线。
You could do e.g.
source <- c('2', '2', '5')
target <- c('4', '5 ', '5 ')
value <- c(1, 1, 1)
df <- cbind.data.frame(source, target, value)
library(rCharts)
sankeyPlot <- rCharts$new()
sankeyPlot$setLib('http://timelyportfolio.github.io/rCharts_d3_sankey')
sankeyPlot$set(
data = df,
nodeWidth = 10,
nodePadding = 15,
width = 300,
height = 300
)
sankeyPlot
注意源中5和目标矢量中5之间的微小差异......