【发布时间】:2016-04-05 15:46:03
【问题描述】:
我面临与 SO 问题here 类似的问题,数据与描述的几乎相同:
graph = {
'1': ['2', '3', '4'],
'2': ['5','11','12','13','14','15'],
'3' : ['6','7','66','77'],
'5': ['6', '8','66','77'],
'4': ['7','66','77'],
'7': ['9', '10']
}
但是,如果我将此图形数据输入到链接脚本中,它会将数据的键与值连接起来(例如,“1”(第一行的键)与“2”(第二行的键)连接数据集中的下一行)。以示例为例:我想将第一行的“1”与第一行的 2、3、4 连接,但不与 2 连接第二行的。此外,我想将所有值相互连接,例如 2 与 3 与 4 与 5 与 11 等等。
这是否清楚?
应保留链接脚本的所有剩余功能(例如通过数边调整节点的圆大小、节点标记等)。
编辑
感谢 Wayne Werner,我注意到我的解释中有一个错误:考虑上述数据集的以下数据:
'3' : ['6','7','66','77'],
'5': ['6', '8','66','77'],
在这种情况下,我想将 3 与 6、7、66、77 连接,而不是将 3 与 5 连接。
此外,我想将 5 与 6、8、66、77 连接起来。
【问题讨论】:
-
除非我弄错了,否则您要求的是不要执行该工具旨在执行的操作。如果您不想将“1”连接到“2”,请将其从
['2', '3', '4']中删除。 -
感谢韦恩,感谢您的回复。但是,我想我说得不够清楚:“1”应该与[“2”,“3”,“4”]连接,括号中的数字也应该连接(也与下一个数字连接)括号内的行)。应该不连接的值是 "1" [...] 和下一行的 "2" [...]在数据集中。有了这些信息,请重新阅读我最初的问题。如果还有不清楚的地方,我会再解释一遍;)
-
只看代码而不阅读文档我猜你是通过
'node': ['connection_1', 'connection_2', 'etc']指定连接的。如果我没看错,你想要'node1': ['node2'], 'node2':['fnord'],但你不希望node1 连接到node2。这对我来说没有任何意义。您是否了解 networkx 以不同的方式工作,或者您是否要求做除此之外的其他事情? -
再次感谢您的回复!我希望我正确理解networkX^^但是是的,你说得对:我想将节点与connection_1和connection_2连接,但不是将节点与node1连接,而不是与node2连接。我加强了你的榜样。请考虑以下数据(除了您的示例):'node2':['fnord', 'connection_1']。在这种情况下,我想将 node 的 connection_1 与 node2 的 connection_1 连接起来。这清楚吗? (我现在也更新了最初的问题,因为你在我的问题中显示了一个错误^^)
-
我认为您的理解并不正确,因为您同时要求两种不同的东西。你有一个节点图。您指定节点和要连接的节点。即
'1': ['2', '3', '4],您是说您希望 1 连接到 2、3 和 4。句号。没有别的了。如果您添加'2': ['3', '4', '5'],那么您的意思是希望 2 连接到 3、4 和 5。也将连接到1,因为您说过当你写'1': ['2', '3', '4']时,你希望 1 连接到 2。
标签: python matplotlib networkx