有序图——一致有序图

默认基类的一致有序变体。注意,如果您使用的是python 3.6+,则不需要这些类,因为python 3.6+中的dict是有序的。还要注意,“ordered”这个词有许多不同的期望值,这些类可能无法提供您期望的顺序。这里的目的是给出一个一致的命令,而不是一个特定的命令。

有序(di/multi/multi)图为报告节点和边缘提供了一致的顺序。节点报告的顺序与节点添加的顺序一致,但对于边缘,顺序不一定是边缘添加的顺序。

通常,您应该使用默认的(即无序的)图形类。但是,有时(例如,测试时)您可能需要保留订单。

使用有序类的子图时需要特别注意。子类中节点的顺序不一定与原始类的顺序相同。一般来说,最好避免使用子图,并用类似以下的代码替换:

#而不是sg=g.subgraph(ordered_nodes)sg=nx.orderedgraph()sg.add_nodes_from(ordered_nodes)sg.add_edges_from(u,v)for(u,v)in g.edges()if u in sg if v in sg)
class OrderedGraph(incoming_graph_data=None, **attr)[源代码]

一致有序的 Graph .

class OrderedDiGraph(incoming_graph_data=None, **attr)[源代码]

一致有序的 DiGraph .

class OrderedMultiGraph(incoming_graph_data=None, **attr)[源代码]

一致有序的 MultiGraph .

class OrderedMultiDiGraph(incoming_graph_data=None, **attr)[源代码]

一致有序的 MultiDiGraph .