那么,如果我有一个用NetworkX创建的基本图,有没有一种方法可以“平铺”它,使它像是成倍地乘以图呢?如果他们仍然保持联系,那就更好了。我尝试了一些fcn,比如nx.Union(),但它似乎覆盖了图形,而不是将其多次相乘。我找不到任何看起来能做到这一点的fcn,有什么想法吗?
编辑:输入可能是一个最多包含50个节点的图。输出将是非常相同的图,但是迭代了n次(这样在输出图中有n50节点)。然而,我希望原始图的迭代是连接的,所以要么覆盖一些节点(st输出节点‘<’n50),要么创建新的边来连接迭代(st输出边‘>’n(输入边))
这有意义吗?
发布于 2016-02-23 01:11:43
您正在寻找的函数是nx.disjoint_union,它允许您添加两个图,并为它们提供不同的节点值。
def n_disjoint_unions(G, n):
H = nx.Graph()
for _ in range(n):
H = nx.disjoint_union(H, nx.copy(G))
return H但是,您需要指定如何连接这些新图形。
https://stackoverflow.com/questions/35511223
复制相似问题