当前位置: 首页>>代码示例 >>用法及示例精选 >>正文


Python NetworkX empty_graph用法及代码示例


本文简要介绍 networkx.generators.classic.empty_graph 的用法。

用法:

empty_graph(n=0, create_using=None, default=<class 'networkx.classes.graph.Graph'>)

返回具有 n 个节点和零边的空图。

参数

nint 或节点的可迭代容器(默认 = 0)

如果 n 是整数,则节点来自 range(n) 。如果 n 是节点容器,则这些节点将出现在图中。

create_using图形实例、构造函数或无

要返回的图形类型的指示符。如果是Graph-type 实例,则清除并使用它。如果没有,请使用 default 构造函数。如果是构造函数,则调用它以创建一个空图。

default图形构造函数(可选,默认 = nx.Graph)

create_using 为 None 时使用的构造函数。如果没有,则使用 nx.Graph。当通过您自己开发的函数将未知的 create_using 值传递给 empty_graph 并且您想要一个除 nx.Graph 之外的默认构造函数时,将使用此方法。

注意

变量create_using 应该是一个图形构造器或一个类似“graph” 的对象。构造函数,例如nx.Graphnx.MultiGraph 将用于创建返回的图形。 “graph”-like 对象将被清除(节点和边将被删除)并重新安装为空的 “graph”,节点在 n 中指定。此函数对于指定生成的空 “graph”(即 Graph、DiGraph、MyWeirdGraphClass 等)的 class-nature 很有用。

变量create_using有三个主要用途:首先,变量create_using可用于创建空有向图、多重图等。例如,

>>> n = 10
>>> G = nx.empty_graph(n, create_using=nx.DiGraph)

将在 n 个节点上创建一个空的有向图。

其次,可以通过create_using 传递现有图(有向图、多重图等)。例如,如果 G 是现有图(分别是有向图、多重图等),则 empty_graph(n, create_using=G) 将清空 G(即使用 G.clear() 删除所有节点和边)然后添加n个节点和零个边,并返回修改后的图。

第三,在构建自己的图形创建函数时,您可以使用empty_graph 通过将用户定义的create_using 传递给empty_graph 来构建图形。在这种情况下,如果您希望默认构造函数不是 nx.Graph,请指定 default

>>> def mygraph(n, create_using=None):
...     G = nx.empty_graph(n, create_using, nx.MultiGraph)
...     G.add_edges_from([(0, 1), (0, 1)])
...     return G
>>> G = mygraph(3)
>>> G.is_multigraph()
True
>>> G = mygraph(3, nx.Graph)
>>> G.is_multigraph()
False

另见create_empty_copy(G)。

例子

>>> G = nx.empty_graph(10)
>>> G.number_of_nodes()
10
>>> G.number_of_edges()
0
>>> G = nx.empty_graph("ABC")
>>> G.number_of_nodes()
3
>>> sorted(G)
['A', 'B', 'C']

相关用法


注:本文由纯净天空筛选整理自networkx.org大神的英文原创作品 networkx.generators.classic.empty_graph。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。