networkx edge-to-node 节点到边缘表示
networkx edge-to-node node-to-edge representation
有一个图 G(e,v),有 N 个节点和 M 条边。它的距离矩阵,D是一个NxN的矩阵。
现在让我们想象一下此图的另一种表示形式 G'(e'=v,v'=e)
,即 G' 中的节点 v' 实际上是图 G 中的边,保持连通性不变。现在它的距离矩阵 D' 是 MxM.
NetworkX 中是否已经存在从 D(NxN) 中获取此 D'(MxM) 的方法?
networkx 有一个名为 line_graph() 的函数,它似乎可以满足您的需求。这是它如何工作的示例:
import networkx as nx
import matplotlib.pyplot as plt
G=nx.star_graph(3)
L=nx.line_graph(G)
nx.draw(G, node_size=500)
plt.show()
nx.draw(L, node_size=500)
plt.show()
有一个图 G(e,v),有 N 个节点和 M 条边。它的距离矩阵,D是一个NxN的矩阵。
现在让我们想象一下此图的另一种表示形式 G'(e'=v,v'=e)
,即 G' 中的节点 v' 实际上是图 G 中的边,保持连通性不变。现在它的距离矩阵 D' 是 MxM.
NetworkX 中是否已经存在从 D(NxN) 中获取此 D'(MxM) 的方法?
networkx 有一个名为 line_graph() 的函数,它似乎可以满足您的需求。这是它如何工作的示例:
import networkx as nx
import matplotlib.pyplot as plt
G=nx.star_graph(3)
L=nx.line_graph(G)
nx.draw(G, node_size=500)
plt.show()
nx.draw(L, node_size=500)
plt.show()