empty_graph#

empty_graph(n=0, create_using=None, default=<class 'networkx.classes.graph.Graph'>)[源代码]#

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

参数
n节点的整型或可迭代容器(默认值=0)

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

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

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

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

CREATE_USING为NONE时使用的构造函数。如果没有,则使用nx.graph。这是在传递未知的 create_using 通过您自行开发的功能实现价值 empty_graph 并且您需要一个默认构造函数,而不是nx.Graph。

笔记

变量create-using应该是一个图形构造函数或类似于“图形”的对象。施工人员,例如 nx.Graphnx.MultiGraph 将用于创建返回的图形。“类图形的对象将被清除(节点和边缘将被删除)并重新设置为一个空的“图形”,节点在n中指定。此功能对于指定生成的空“图形”的类性质(即图形、有向图、myweirdgraphclass等)很有用。

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

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

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

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

第三,在构建自己的图形创建函数时,可以通过传递用户定义的用于空图形的创建来使用空图形来构建图形。在这种情况下,如果希望默认构造函数不是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

另请参见创建空拷贝(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']