13
改变边缘的体重我有一个加权图:NetworkX(蟒蛇):如何通过指定规则
F=nx.path_graph(10)
G=nx.Graph()
for (u, v) in F.edges():
G.add_edge(u,v,weight=1)
得到节点列表:
[(0, 1), (1, 2), (2, 3), (3, 4), (4, 5), (5, 6), (6, 7), (7, 8), (8, 9)]
我想通过改变每个边缘的重量这条规则:
清除一个节点,比如节点5,显然边缘(4,5)和(5,6)将被删除,每条边的权重将变为:
{#这些边缘附近的边缘删除(4,5)和(5,6)
(3,4): '重量'= 1.1,
(6,7):“重量'= 1.1,
#these边缘附近的边缘上面提到
(2,3):' 重量 '= 1.2,
(7,8):' 重量“= 1.2,
#这些边缘在edg附近上面提到的ES
(1,2): '重量'= 1.3,
(8,9): '重量'= 1.3,
#该边缘附近是(1,2)
(0,1):'weight'= 1.4}
如何写这个算法?
PS:path_graph只是一个例子。我需要一个适合任何图形类型的程序。此外,该程序需要可迭代,这意味着我可以每次从原始图中删除一个节点。
问候
我不明白重新分配重量的规则 – inspectorG4dget 2010-10-19 04:40:09