感谢您的任何帮助,您可以提供。
我正在使用networkd3
包R
来绘制forceNetwork
节点列表和链接(edgelist)的图。
我有一个边缘列表/链接列表:
> edgelist
round_prob NODEAid NODEBid
33979 0.6245 6990 6588
4899 0.9797 1042 1041
37109 0.6046 7498 7531
27771 0.7144 5906 16029
3603 0.6452 783 804
28491 0.6078 6034 5862
4518 0.6245 962 9874
19613 0.6745 4121 10285
19916 0.8721 4179 4180
8249 0.6821 1737 1733
35389 0.7150 7145 16992
32010 0.6495 6728 16921
22553 0.6959 4722 4549
14996 0.6031 3273 12929
35927 0.6245 7221 9814
15349 0.6245 3337 3233
34833 0.6109 7085 6852
39044 0.6117 7936 7977
39075 0.6844 7944 10978
11691 0.6821 2572 2587
这是一个更大的边缘列表的样本,其中我只选择了链接概率 >0.6 和 <1 的链接。在采样之前,完整的边缘列表是零索引的。
我还有一个节点列表,它有 18000 行长。它的一个样本是这样的:
> head(nodes)
node id gr
0 1097 0 1
1 1149 1 1
2 1150 2 1
3 3395 3 1
4 3396 4 1
5 3523 5 1
我尝试使用forceNetwork
:
forceNetwork(Links = edgelist, Nodes = nodes, Source = "NODEAid",
Target = "NODEBid", Value = "round_prob", NodeID = "node",
Group = "gr", opacity = 0.9)
在放大之前,这给出了这个图:
问题:我只有 20 对节点,但我的情节还有数千个(我无法返回数字)。
通过将鼠标悬停在未连接的点上,我能够确定它们是由节点列表中所有可能的节点组成的。
基本上我认为这forceNetwork
是在绘制每个可能的节点,即使是那些不在边缘列表中的节点。
为什么会发生这种情况,我该如何阻止它这样做?
根据这个问题Going crazy with forceNetwork in R: no edges shown我确保我的所有数据都是数字格式并且索引为零。我仍然收到此错误。
注意:如果我在这个问题中运行 forceNetwork 示例如何使用 networkD3 在 R 中绘制有向图?并且从本教程https://christophergandrud.github.io/networkD3/输出符合预期。