如何在networkx中创建连接图

时间:2017-04-18 06:09:59

标签: python python-3.x graph networkx

我想通过IPythonNetworkX笔记本中创建连接图。以前,我用

erdos_renyi_graph

生成随机图,但我从未得到连接图,我想用这个图来证明我的图是一个小世界网络。但无法计算未连接图的平均最短路径。因此,请告诉我如何通过NetworkX生成连接图。

2 个答案:

答案 0 :(得分:3)

由于您没有提及图表的确切参数,我想建议您使用创建边缘的概率。 以下networkx函数允许您为图中存在的边提供概率(p)。

erdos_renyi_graph(n, p, seed=None, directed=False)

举个例子:

G = nx.erdos_renyi_graph(500, 0.5, seed=123, directed=False)

为您提供完全连接的图表。

答案 1 :(得分:2)

定义了很多graph generators for NetworkX,您不仅可以使用erdos_renyi_graph(可以通过第二个参数调整到几乎连接):

Social Networks图表:

Community graphs

  • caveman_graph(l, k) - 返回lk个大小为connected_caveman_graph(l, k)的小团体。
  • n - 返回krelaxed_caveman_graph(l, k, p[, seed, directed])个大小为random_partition_graph(sizes, p_in, p_out[, ...])的小团体。
  • planted_partition_graph(l, k, p_in, p_out[, ...]) - 返回caveman graph
  • gaussian_random_partition_graph(n, s, v, ...) - 使用尺寸分区返回connected caveman graph
  • ring_of_cliques - 返回relaxed caveman graph
  • findViewById(android.R.id.content).setId(1); - 生成random partition graph
  • onCreate(Bundle)

等等。