首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在Networkx中绘制图形的长度

如何在Networkx中绘制图形的长度
EN

Stack Overflow用户
提问于 2018-07-22 18:21:41
回答 1查看 533关注 0票数 2

在networkx中,我发现绘制边的标签非常容易,但是我如何绘制边的长度或相对距离?

以下是我的测试代码

代码语言:javascript
复制
G = nx.Graph()
G.add_edge(0, 1, length=1)
G.add_edge(0, 2, length=5)
pos = nx.spring_layout(G)
length = nx.get_node_attributes(G, 'length')

我的意思是绘图应该显示节点之间的长度,因为边有它相应的长度。下面是一个例子

0和2之间的距离看起来比0和1之间的距离大。

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2018-07-23 06:32:57

您的示例将每条边的长度显示为文本标签。也就是说,文本给出了边的长度。但是,由于大多数网络不是嵌入到2D中的,因此无法将它们定位在2D图片中,从而为分配给图形的长度提供正确的视角。

例如,三角形图的长度可以为3、4和12。即使它是具有有效边长度的有效图,也无法在长度缩放版本中实现。

如果你将节点嵌入到2D平面中(节点到2元组位置对的字典),你可以使用它来绘制你喜欢的网络。但是NetworkX没有提供找到这种嵌入的方法。最近有一个使用NetworkX进行平面性测试的拉取请求(#3040)。

Aric Hagberg有一些处理平面图的代码。看看这个帖子:https://groups.google.com/forum/#!topic/networkx-discuss/FdhFedwvtrc

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/51464123

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档