networkx中kamada_kawai_layout的dist属性是什么意思,如何使用该属性控制图形的间距?

时间:2019-03-17 00:00:15

标签: python networkx

我有一个从networkx生成的图。我想控制图形中的间距,尤其是在kamada_kawai_layout显示中。

我在此处附上图表的图像:

click here if you want to see a picture of my graph

如果看到的话,independent_5dependent_1_result中有多个节点。但是,它们都是彼此叠放的,我希望它们是分开的和不同的,以便我们实际上可以看到不同的路径。

布局上的documentation将dist属性描述为:“ dist (float (default=None)) –节点之间的最佳距离的两层字典,由源节点和目标节点索引。如果None,使用shortest_path_length()计算距离。”

所以我知道我们需要提供一个字典来控制间距,但是我没有获得如何做到这一点的细节。是关键元组吗?值会是什么样子-是数字吗?这个数字是什么意思?等等?任何帮助将不胜感激!

1 个答案:

答案 0 :(得分:0)

该函数需要格式为dist['source']['target'] = distance的字典。

您会看到in the code,如果省略了dist,该函数将得出dict(nx.shortest_path_length(G, weight=weight))的结果。 shortest_path_length返回对(source, distances)上的迭代器,其中distances是将目标节点映射到距离的字典。

请注意,函数不假定距离是对称的!如果仅将'u''v'的距离定义为100.0(即仅dist['u']['v'] = 100.0),则'v''u'的距离为假定为1000000(请参见the definition of the functiondist_mtx的定义)。