interval_graph#

interval_graph(intervals)[source]#

根据给定的区间列表生成一个区间图。

在图论中,区间图是由实线上一组闭区间形成的无向图,每个区间对应一个顶点,若两个区间的交集非空,则在它们对应的顶点之间有一条边。它是这些区间的交集图。

更多信息请参阅:https://en.wikipedia.org/wiki/Interval_graph

参数:
intervals一个区间序列,例如 (l, r),其中 l 是左端点,
r 是闭区间的右端点。
返回:
Gnetworkx 图
引发:
TypeError

如果 intervals 包含 None 或不是 collections.abc.Sequence 类型的元素,或者长度不为 2。

ValueError

如果 intervals 包含一个区间 [min1, max1],且 min1 > max1。

示例

>>> intervals = [(-2, 3), [1, 4], (2, 3), (4, 6)]
>>> G = nx.interval_graph(intervals)
>>> sorted(G.edges)
[((-2, 3), (1, 4)), ((-2, 3), (2, 3)), ((1, 4), (2, 3)), ((1, 4), (4, 6))]