gpt4 book ai didi

python - 在 NetworkX 中显示节点位于精确 (x,y) 位置的图形。结果被轮换

转载 作者:行者123 更新时间:2023-11-28 17:42:49 30 4
gpt4 key购买 nike

我在 networkX 上显示我的图表时遇到了问题。

我从输入的图片中提取一些角点,并将角点保存为 NetworkX 中的图形节点。该节点包含检索到的角点的 (x,y) 位置。然后我展示了将节点放置在它们确切的 (x,y) 位置的图表。但是,当我使用 nx.draw() 显示图形时,图形会一直显示图片中检索到的形状。

这里有一些代码供你理解:

pe = nx.Graph()
pe.add_node('p1', posxy=(ap[0][0], ap[0][1]))
pe.add_node('p2', posxy=(ap[1][0], ap[1][2]))
pe.add_node('p3', posxy=(ap[2][0], ap[2][3]))
pe.add_node('p4', posxy=(ap[3][0], ap[3][4]))
pe.add_node('p5', posxy=(ap[4][0], ap[4][5]))
pe.add_cycle(['p1','p2','p3','p4','p5'])
positions = nx.get_node_attributes(pe,'posxy')
nx.draw(pe, positions, node_size=500)

其中 posxy=(ap[0][0], ap[0][1]) 是找到的角点在平面中的位置。角点保存在列表 ap 中。

这是检索到的形状的图片:

enter image description here

这是显示的图表:

enter image description here

为什么输出一直显示?如何以类似于检测到的初始形状的方式旋转图形?

最佳答案

您的 NetworkX 图是您试图模仿的图的垂直反射(reflect)。要解决此问题,对于每个 y 坐标,请使用 height - y,其中 height 是图形的高度。

关于python - 在 NetworkX 中显示节点位于精确 (x,y) 位置的图形。结果被轮换,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22045662/

30 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com