2

我正在尝试使用优秀的networkD3库进行强制网络布局。我传递给的参数NodeID是一个数值列,在每一行都有唯一的值。我想将节点的标签设置为与映射到的列不同的列NodeID。此标签列需要或不需要跨行是唯一的。有没有办法做到这一点?

示例 - 在 的帮助条目中forceNetwork,您可以看到示例 -

forceNetwork(Links = MisLinks, Nodes = MisNodes, Source = "source",
             Target = "target", Value = "value", NodeID = "name",
             Group = "group", opacity = 0.4, zoom = TRUE)

输出中的标签映射到与 NodeID 相同的列。标签可以映射到不同的列吗?

4

1 回答 1

0

标签可以映射到“链接”数据框中的任何列。如果您查看您的示例,则sourceandtarget值是从 0 到 N 的整数(请注意,networkD3预计节点 ID 的索引为零)。但是,节点的标签由name“链接”数据框中的列给出。

> head(MisNodes)
             name group size
1          Myriel     1   15
2        Napoleon     1   20
3 Mlle.Baptistine     1   23
4    Mme.Magloire     1   30
5    CountessdeLo     1   11
6        Geborand     1    9

注意:文档指出“如果未指定 ID,则节点必须与链接数据框中的源变量列的顺序相同。”

于 2016-05-19T13:25:27.890 回答