我对python编码比较陌生,我使用以下代码生成一个包含40个节点的图,并使用以下代码给出节点的布局:
pos = nx.circular_layout(graph_anchor, **kwargs)
以下代码创建图形锚定:
graph_anchor = convert_ebunch_to_graph(ebunch_anchor)
def convert_ebunch_to_graph(ebunch):
g = nx.DiGraph()
g.add_weighted_edges_from(ebunch)
我的问题是,我如何计算出节点被绘制的顺序,也就是说,我如何计算出代码如何决定将哪些节点放在彼此旁边,以及以什么顺序排列它们
从nx.circular_layout的来源:
似乎位置是由360度除以节点数生成的。 哪一个节点在哪里结束由这一行决定:
zip(G,pos)按顺序遍历图的节点。并为他们分配职位。如果你想改变位置,你需要改变顺序
例如:
这里,分配的第一个位置是节点0的位置,然后我们逆时针走
我找不到一种简单的方法来改变G中节点的顺序,因此这里有一个小的解决方法,它创建了一个随机顺序的新图形:
因此,更改图中节点的顺序会更改它们最终在循环布局中的位置
相关问题 更多 >
编程相关推荐