注意
转到末尾以下载完整示例代码。
有向无环图
本示例演示如何创建随机有向无环图 (DAG),这在包括 Git 提交历史在内的许多场景中都很有用。
import igraph as ig
import matplotlib.pyplot as plt
import random
首先,我们设置一个随机种子以确保可复现性。
random.seed(0)
首先,我们生成一个具有固定边数且无环的随机无向图。
g = ig.Graph.Erdos_Renyi(n=15, m=30, directed=False, loops=False)
然后我们将其原地转换为一个 DAG。此方法均匀地采样具有给定边数和顶点数的 DAG。
g.to_directed(mode="acyclic")
我们可以打印出 DAG 的摘要信息。
IGRAPH D--- 15 30 --
最后,我们可以使用 Sugiyama 布局绘制图形,该布局来自 igraph.Graph.layout_sugiyama()

脚本总运行时间: (0 分 0.179 秒)