gpt4 book ai didi

r - networkD3 Sankey Diagrams - 控制节点位置

转载 作者:行者123 更新时间:2023-12-05 01:43:19 40 4
gpt4 key购买 nike

我希望在 R Markdown 中使用 HTML 小部件/Javascript 创建一个交互式 Sankey 图,所以我正在考虑使用 networkD3 package .我希望利用的主要交互性是单击节点以向用户突出显示从中发出的路径。

我之前使用 Riverplot package 创建了静态 Sankey 图,其中您可以指定每列节点的相对位置,以及该列中节点的顺序。

回到 networkD3 产品,我不确定我是否可以用同样简单的方式控制相对节点位置(垂直和水平)。我发现了一些似乎与我的要求相关的帖子,但我不清楚哪些(如果有的话)已经在包中实现,以及“愿望 list ”中有什么

我找到的帖子是:nodesort , fixed nodessequence explorer

所以,我的问题是,是否有人可以就最好的 R 包或技术提出建议,以创建具有初始(相对)节点位置控制的基于 HTML 小部件的交互式 sankey 图?

最佳答案

您可以使用 iterations = 0 参数有效地禁用 networkD3sankeyNetwork() 函数的自动布局优化。使用它,节点将按照它们在数据框中的相同顺序绘制。

例如...

library("networkD3")

myDf <- list(
nodes=data.frame(name=c( "A", "B", "C", "D", "E",
"V", "W", "X", "Y", "Z")),
links=data.frame(source=as.integer(c(0, 1, 2, 3, 3, 4, 4)),
target=as.integer(c(7, 6, 7, 8, 7, 5, 9)),
value = c(1, 4, 1, 5, 1, 5, 3)
)
)

sankeyNetwork(Links = myDf$links, Nodes = myDf$nodes, Source = "source",
Target = "target", Value = "value", NodeID = "name",
units = "TWh", fontSize = 25, nodeWidth = 30,
fontFamily = "sans-serif", iterations = 0)

sanky plot with same order as in the data frame

关于r - networkD3 Sankey Diagrams - 控制节点位置,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/49718117/

40 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com