Graph generators#
Atlas#
小型图集生成器。
|
返回图集中的第 |
返回包含Graph Atlas中最多七个节点的所有图的列表。 |
Classic#
一些经典图的生成器。
典型的图构建函数调用如下:
>>> G = nx.complete_graph(100)
返回一个包含0到99节点的完全图,作为一个简单图。除了 empty_graph
之外,本模块中的所有函数都返回一个Graph类(即一个简单、无向图)。
|
返回高度为 |
|
返回杠铃图:两个完全图通过一条路径连接。 |
|
返回阶数为 n 的二项树。 |
|
返回具有 n 个节点的完全图 |
|
返回具有指定子集大小的完整多部图。 |
|
返回长度为 n 的圆形梯形图 \(CL_n\)。 |
|
返回具有 \(n\) 个节点的循环图 \(Ci_n(x_1, x_2, ..., x_m)\)。 |
|
返回循环图 \(C_n\),由循环连接的节点组成。 |
|
返回层次化构造的Dorogovtsev--Goltsev--Mendes图。 |
|
返回具有 n 个节点且无边的空图。 |
|
创建一个包含 |
|
返回具有参数 |
|
返回长度为 n 的梯形图。 |
|
返回棒棒糖图; |
|
返回一个没有节点或边的空图。 |
|
返回线性连接节点的路径图 |
|
返回星形图 |
|
返回 (m,n)-蝌蚪图; |
|
返回一个仅有一个节点(标签为0)且没有边的平凡图。 |
|
返回 Turan 图 |
|
返回轮图 |
Expanders#
提供扩展图的显式构造方法。
|
返回在 |
|
返回具有 |
|
返回具有 \(p\) 个节点的 Paley \(\frac{(p-1)}{2}\) -正则图。 |
|
创建随机规则扩展图的实用工具。 |
|
确定图 G 是否为正则扩展图。[Rc4fb9a2e4990-1] |
|
返回一个具有 \(n\) 个节点和度数 \(d\) 的随机正则扩展图。 |
Lattice#
生成网格图和格点的函数
grid_2d_graph()
, triangular_lattice_graph()
, 和 hexagonal_lattice_graph()
函数分别对应于平面的三种 正则铺砌 ,即正方形、三角形和六边形铺砌。grid_graph()
和 hypercube_graph()
则适用于任意维度。关于 三角形铺砌 和 正方形、六边形和三角形网格 的相关讨论也很有用。
|
返回二维网格图。 |
|
返回 n 维网格图。 |
|
返回一个 |
返回 n 维超立方体图。 |
|
|
返回一个 \(m\) 行 \(n\) 列的三角形网格图。 |
Small#
各种小型和命名图,以及一些紧凑的生成器。
|
返回指定LCF表示法的立方图。 |
|
返回牛图 |
|
返回 Chvátal 图 |
|
返回3-正则的柏拉图立方体图 |
|
返回Desargues图 |
|
返回菱形图 |
|
返回正十二面体图。 |
|
返回 Frucht 图。 |
|
返回Heawood图,一个(3,6)笼图。 |
返回Hoffman-Singleton图。 |
|
|
返回房屋图(顶部带有三角形的正方形) |
|
返回带有十字形内部的房屋图。 |
|
返回柏拉图式二十面体图。 |
|
返回Krackhardt风筝社交网络。 |
|
返回莫比乌斯-康托尔图。 |
|
返回正八面体图。 |
返回帕普斯图。 |
|
|
返回 Petersen 图。 |
|
返回一个带有环的小迷宫。 |
|
返回3-正则的柏拉图四面体图。 |
|
返回截角立方体的骨架。 |
|
返回截角四面体的骨架。 |
|
返回Tutte图。 |
Random Graphs#
随机图生成器。
|
返回一个 \(G_{n,p}\) 随机图,也称为 Erdős-Rényi 图或二项图。 |
|
返回一个 \(G_{n,p}\) 随机图,也称为 Erdős-Rényi 图或二项图。 |
|
返回一个 \(G_{n,m}\) 随机图。 |
|
返回一个 \(G_{n,m}\) 随机图。 |
|
返回一个 \(G_{n,p}\) 随机图,也称为 Erdős-Rényi 图或二项图。 |
|
返回一个 \(G_{n,p}\) 随机图,也称为 Erdős-Rényi 图或二项图。 |
|
返回一个Newman–Watts–Strogatz小世界图。 |
|
返回一个 Watts–Strogatz 小世界图。 |
|
返回一个连接的Watts-Strogatz小世界图。 |
|
返回一个包含 \(n\) 个节点的随机 \(d\)-正则图。 |
|
返回一个使用Barabási–Albert优先连接的随机图 |
|
返回一个使用双Barabási–Albert优先连接的随机图 |
|
返回一个扩展的Barabási–Albert模型图。 |
|
Holme和Kim算法用于生成具有幂律度分布和近似平均聚类系数的增长图。 |
|
返回一个基于指定核的随机图。 |
|
返回一个随机的龙虾图。 |
|
返回一个给定构造函数的随机壳层图。 |
|
返回一个具有幂律度分布的树。 |
|
返回一个具有幂律分布的树的度序列。 |
|
返回一个基于指定核的随机图。 |
Duplication Divergence#
基于“复制”方法生成图形的函数。
这些图生成器从一个小的初始图开始,然后复制节点并(部分)复制它们的边。这些函数通常受到生物网络的启发。
|
返回一个使用重复-分歧模型的无向图。 |
|
返回一个使用部分复制模型生成的随机图。 |
Degree Sequence#
生成具有给定度序列或期望度序列的图。
|
返回一个具有给定度序列的随机图。 |
|
返回一个具有给定度序列的有向随机图。 |
|
返回一个具有给定期望度的随机图。 |
|
返回一个使用Havel-Hakimi算法构造的具有给定度序列的简单图。 |
|
返回一个具有给定度序列的有向图。 |
|
为给定的度序列构建一棵树。 |
|
返回一个具有给定度序列的简单随机图。 |
Random Clustered#
生成具有给定度和三角形序列的图。
|
生成一个具有给定联合独立边度和三角形度序列的随机图。 |
Directed#
生成一些有向图的生成器,包括增长网络(GN)图和无标度图。
|
返回具有 |
|
返回具有重定向的生成网络(GNR)有向图,包含 |
|
返回具有复制机制的递增网络(GNC)有向图,包含 |
|
返回一个具有优先连接的随机 |
|
返回一个无标度有向图。 |
Geometric#
几何图生成器。
|
返回节点对列表,这些节点对之间的距离在 |
|
返回一个地理阈值图。 |
|
返回一个可导航的小世界图。 |
|
返回一个在单位立方体中具有 |
|
返回单位立方体中的软随机几何图。 |
|
返回一个单位立方体中的阈值随机几何图。 |
|
返回一个 Waxman 随机图。 |
|
返回一个从几何软配置模型中随机生成的图。 |
Line Graph#
生成折线图的函数。
|
返回图或有向图 |
返回图 G 的逆线图。 |
Ego Graph#
自我图谱。
|
返回以节点 n 为中心,在给定半径内的邻居诱导子图。 |
Stochastic#
生成给定加权有向图的随机图的函数。
|
返回有向图 |
AS graph#
生成类似互联网自治系统网络的图表
|
生成一个类似于互联网AS网络的随机无向图 |
Intersection#
随机交集图生成器。
|
返回一个均匀随机交集图。 |
|
返回一个交集图,其中每个节点的属性集是随机选择的,并且大小相等(k)。 |
|
返回一个具有独立概率的随机交集图,用于节点和属性集之间的连接。 |
Community#
用于研究社交网络的图类生成器。
|
返回一个由 |
|
返回一个由 |
|
生成一个高斯随机分区图。 |
|
返回LFR基准图。 |
|
返回种植的 l-分区图。 |
|
返回具有指定大小分区的随机分区图。 |
|
返回一个松弛的洞穴人图。 |
|
定义一个“团环”图。 |
|
返回一个随机块模型图。 |
|
生成一个风车图。 风车图是由 |
Spectral#
生成具有给定特征向量结构的图
|
返回一个具有与 |
Trees#
生成树的函数。
本模块中随机采样树的函数分为两种变体:有标签和无标签。有标签变体从具有给定节点数的所有可能树中均匀随机采样。无标签变体从具有给定节点数的所有可能的*同构类*树中均匀随机采样。
要理解差异,请考虑以下示例。有四个节点的树有两个同构类。一个是路径图,另一个是星形图。无标签变体会以1/2的概率返回线图或星形图。
有标签变体会以3/4的概率返回线图,以1/4的概率返回星形图,因为线图的有标签变体比星形图多。更确切地说,线图的自同构群的阶数为2,而星形图的自同构群的阶数为6,因此线图的有标签变体是星形图的三倍,从而有更多的机会被抽中。
此外,本模块中的一些函数可以均匀随机采样有根树和森林。有根树是具有指定根节点的树。有根森林是不相交的有根树的并集。
|
从路径列表创建一个有向前缀树。 |
|
返回一个在 |
|
返回一个包含 |
|
返回一个带有 |
|
返回一个随机选择的树或树列表。 |
|
返回一个随机均匀选择的未标记有根树的数量 |
|
返回一个随机选择的森林或森林列表。 |
Non Isomorphic Trees#
Wright、Richmond、Odlyzko和McKay(WROM)算法的实现,用于枚举给定阶数的所有非同构自由树。有根树通过层序列表示,即列表中第i个元素指定顶点i到根的距离。
|
生成非同构树的列表 |
返回非同构树的数量 |
Triads#
生成三元图的函数,即在三个节点上的可能有向图。
|
返回具有给定名称的三元图。 |
Joint Degree Sequence#
生成具有给定联合度和有向联合度的图
|
检查给定的联合度字典是否可实现。 |
|
生成具有给定联合度字典的随机简单图。 |
|
检查给定的有向联合度输入是否可实现 |
|
生成具有联合度序列的随机简单有向图。 |
Mycielski#
与Mycielski操作和Mycielskian图族相关的函数。
|
返回一个简单无向图 G 的 Mycielski 图 |
生成第 n 个 Mycielski 图的生成器。 |
Harary Graph#
哈拉里图生成器
本模块提供了两种生成哈拉里图的方法,这种图是由著名数学家弗兰克·哈拉里在其1962年的著作[H]中提出的。第一个生成器生成的哈拉里图在给定节点数和边数的情况下,最大化节点连通性。第二个生成器生成的哈拉里图在给定节点连通性和节点数的情况下,最小化图中的边数。
References#
Harary, F. “图的最大连通性.” 美国国家科学院院刊 48, 1142-1146, 1962.
|
返回具有给定节点数和边数的Harary图。 |
|
返回具有给定节点连通性和节点数量的Harary图。 |
Cographs#
生成cograph的生成器
cograph是一种不包含四个顶点路径的图。
cograph或:math:P_4
-free图可以通过不相交并集和补集操作从一个单个顶点获得。
References#
D.G. Corneil, H. Lerchs, L.Stewart Burlingham, “补图可约图”, 离散应用数学, 第3卷, 第3期, 1981年, 第163-174页, ISSN 0166-218X.
|
返回一个包含 \(2 ^ n\) 个节点的随机cograph。 |
Interval Graph#
区间图生成器。
|
生成给定区间列表的区间图。 |
Sudoku#
数独图生成器
此模块提供了一个生成n-数独图的工具。它可以用于开发解决或生成数独谜题的算法。
一个完成的数独网格是一个9x9的整数数组,范围在1到9之间,没有任何数字在同一行、列或3x3的方框中出现两次。
8 6 4
3 2 5
9 7 1
|
3 7 1
8 4 9
2 6 5
|
2 5 9
7 6 1
8 4 3
|
4 3 6
1 9 8
2 5 7
|
1 9 2
6 5 7
4 8 3
|
5 8 7
4 3 2
9 1 6
|
6 8 9
7 1 3
5 4 2
|
7 3 4
5 2 8
9 1 6
|
1 2 5
6 9 4
3 7 8
|
数独图是一个无向图,包含81个顶点,对应于数独网格的单元格。它是一个度数为20的正则图。两个不同的顶点相邻当且仅当对应的单元格属于同一行、列或方框。一个完成的数独网格对应于数独图的九种颜色的顶点着色。
更一般地,n-数独图是一个包含n^4个顶点的图,对应于一个n^2乘n^2的网格。两个不同的顶点相邻当且仅当它们属于同一行、列或n乘n的方框。
References#
Herzberg, A. M., & Murty, M. R. (2007). 数独方块与染色多项式。美国数学学会通告, 54(6), 708-717.
Sander, Torsten (2009), “数独图是整数”, 组合学电子杂志, 16 (1): 注释25, 7页, MR 2529816
Wikipedia contributors. “数独术语表.” 维基百科, 自由百科全书, 2019年12月3日. 网络. 2019年12月22日.
|
返回 n-数独图。默认值 n 为 3。 |
Time Series#
时间序列图
|
返回输入时间序列的可视图(Visibility Graph)。 |