图生成器#
图谱 (Atlas)#
用于生成小型图谱的生成器。
|
返回图谱中序号为 |
返回图谱中所有节点数不超过七的图的列表。 |
经典图#
用于生成一些经典图的生成器。
典型的图构建函数调用方式如下:
>>> G = nx.complete_graph(100)
返回节点数为 n (标记为 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)且没有边的平凡图。 |
|
返回图兰图 |
|
返回轮图 |
扩展图 (Expanders)#
提供扩展图的显式构造方法。
|
返回具有 |
|
返回具有 |
|
返回具有 \(p\) 个节点的 Paley \((\frac{p-1)}{2}\) -正则图。 |
|
创建随机正则扩展图的工具。 |
|
确定图 G 是否为正则扩展图。 |
|
返回具有 \(n\) 个节点和度数 \(d\) 的随机正则扩展图。 |
格图 (Lattice)#
用于生成网格图和格图的函数
函数 grid_2d_graph()
、triangular_lattice_graph()
和 hexagonal_lattice_graph()
分别对应于平面上的三种正则密铺:正方形密铺、三角形密铺和六边形密铺。 grid_graph()
和 hypercube_graph()
对于任意维度是类似的。有关三角形密铺以及正方形、六边形和三角形网格的有用讨论可以在此处找到。
|
返回二维网格图。 |
|
返回 n 维网格图。 |
|
返回一个 |
返回 n 维超立方体图。 |
|
|
返回 \(m\) 乘 \(n\) 的三角形格图。 |
小型图#
各种小型具名图,以及一些紧凑的生成器。
|
返回 LCF 表示法中指定的立方图。 |
|
返回牛头图 (Bull Graph) |
|
返回 Chvátal 图 |
|
返回 3-正则柏拉图立方图 |
|
返回 Desargues 图 |
|
返回钻石图 |
|
返回柏拉图十二面体图。 |
|
返回 Frucht 图。 |
|
返回 Heawood 图,一个 (3,6) 笼。 |
返回 Hoffman-Singleton 图。 |
|
|
返回房屋图(顶部带有三角形的正方形) |
|
返回在房屋正方形内带有一个交叉的房屋图。 |
|
返回柏拉图二十面体图。 |
|
返回 Krackhardt 风筝社交网络。 |
|
返回 Moebius-Kantor 图。 |
|
返回柏拉图八面体图。 |
返回 Pappus 图。 |
|
|
返回 Petersen 图。 |
|
返回带有环的小迷宫。 |
|
返回 3-正则柏拉图四面体图。 |
|
返回截角立方体的骨架图。 |
|
返回截角柏拉图四面体的骨架图。 |
|
返回 Tutte 图。 |
随机图#
用于生成随机图的生成器。
|
返回一个 \(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\) 的随机 \(d\)-正则图。 |
|
使用 Barabási–Albert 优先连接方法返回一个随机图 |
|
使用双重 Barabási–Albert 优先连接方法返回一个随机图 |
|
返回一个扩展的 Barabási–Albert 模型图。 |
|
用于生成具有幂律度分布和近似平均聚类的增长图的 Holme 和 Kim 算法。 |
|
返回基于指定核函数的随机图。 |
|
返回一个随机龙虾图。 |
|
返回根据给定的构造器生成的随机壳图。 |
|
返回一个具有幂律度分布的树。 |
|
返回一个具有幂律分布的树的度序列。 |
|
返回基于指定核函数的随机图。 |
复制-分化图#
基于“复制”方法生成图的函数。
这些图生成器从一个小型初始图开始,然后复制节点并(部分)复制它们的边。这些函数通常受到生物网络的启发。
|
使用复制-分化模型返回一个无向图。 |
|
使用部分复制模型返回一个随机图。 |
度序列图#
生成具有给定度序列或期望度序列的图。
|
返回一个具有给定度序列的随机图。 |
|
返回一个具有给定度序列的有向随机图。 |
|
返回一个具有给定期望度数的随机图。 |
|
使用 Havel-Hakimi 算法构造并返回具有给定度序列的简单图。 |
|
返回一个具有给定度序列的有向图。 |
|
为给定的度序列构造一棵树。 |
|
返回一个具有给定度序列的简单随机图。 |
随机聚类图#
生成具有给定度序列和三角形序列的图。
|
生成一个具有给定联合独立边度序列和三角形度序列的随机图。 |
有向图#
用于生成一些有向图的生成器,包括增长网络 (GN) 图和无标度图。
|
返回具有 |
|
返回具有 |
|
返回具有 |
|
返回一个带优先连接的随机 |
|
返回一个无标度有向图。 |
几何图#
用于生成几何图的生成器。
|
返回彼此距离在 |
|
返回地理阈值图。 |
|
返回可导航小世界图。 |
|
返回维度为 |
|
返回单位立方体中的软随机几何图。 |
|
返回单位立方体中的阈值随机几何图。 |
|
返回 Waxman 随机图。 |
|
返回几何软配置模型中的随机图。 |
线图 (Line Graph)#
用于生成线图的函数。
|
返回图或有向图 |
返回图 G 的逆线图。 |
自我中心图 (Ego Graph)#
自我中心图。
|
返回以节点 n 为中心、在给定半径范围内的邻居的诱导子图。 |
随机图 (Stochastic)#
用于从给定加权有向图生成随机图的函数。
|
返回有向图 |
自治系统图 (AS graph)#
生成类似于互联网自治系统网络的图
|
生成一个类似于互联网AS网络的随机无向图 |
交集图#
用于生成随机交集图的生成器。
|
返回一个均匀随机交集图。 |
|
返回一个交集图,其中每个节点的属性集是随机选择且大小相等 (k)。 |
|
返回一个随机交集图,其中节点与属性集之间的连接具有独立的概率。 |
社区#
用于生成社会网络研究中使用的图类别的生成器。
|
返回由 |
|
返回由 |
|
生成一个高斯随机划分图。 |
|
返回 LFR 基准图。 |
|
返回植入的 l-划分图。 |
|
返回具有给定划分大小的随机划分图。 |
|
返回一个松弛的穴居人图。 |
|
定义一个“派系环”图。 |
|
返回一个随机块模型图。 |
|
生成一个风车图。 |
谱图#
生成具有给定特征向量结构的图
|
返回一个随机简单图,其谱类似于 |
树#
用于生成树的函数。
本模块中用于随机采样树的函数有两种变体:有标签和无标签。有标签变体从给定节点数的每种可能的树中均匀随机采样。无标签变体从给定节点数的每种可能的*同构类*树中均匀随机采样。
为了理解它们之间的区别,考虑以下示例。有四节点的树有两种同构类。一种是路径图,另一种是星形图。无标签变体将以 1/2 的概率返回路径图或星形图。
有标签变体将以 3/4 的概率返回路径图,以 1/4 的概率返回星形图,因为路径图的有标签变体比星形图多。更准确地说,路径图的自同构群阶数为 2,而星形图的自同构群阶数为 6,所以路径图的有标签变体是星形图的三倍,因此有三次更高的被抽到的机会。
此外,本模块中的一些函数可以均匀随机采样有根树和有根森林。有根树是指具有指定根节点的树。有根森林是不相交的有根树的并集。
|
从路径列表中创建一个有向前缀树。 |
|
返回一个在 |
|
返回一个具有 |
|
返回一个具有 |
|
随机选择并返回一棵树或多棵树的列表。 |
|
均匀随机返回一定数量的无标签有根树 |
|
随机选择并返回一个森林或多个森林的列表。 |
非同构树#
实现了 Wright, Richmond, Odlyzko 和 McKay (WROM) 算法,用于枚举给定阶数的所有非同构自由树。有根树由层次序列表示,即列表,其中第 i 个元素指定顶点 i 到根的距离。
|
生成非同构树的列表 |
返回非同构树的数量 |
三元组图#
生成三元组图的函数,即三个节点上可能的有向图。
|
返回给定名称的三元组图。 |
联合度序列#
生成具有给定联合度和有向联合度的图
|
检查给定的联合度字典是否可实现。 |
|
生成一个具有给定联合度字典的随机简单图。 |
|
检查给定的有向联合度输入是否可实现 |
|
生成具有联合度的随机简单有向图。 |
Mycielski#
与 Mycielski 运算和 Mycielskian 图族相关的函数。
|
返回简单无向图 G 的 Mycielskian |
第 n 个 Mycielski 图的生成器。 |
Harary 图#
Harary 图的生成器
本模块提供了两个 Harary 图的生成器,该图由著名数学家 Frank Harary 在其 1962 年的作品 [H] 中提出。第一个生成器给出在给定节点数和边数下最大化节点连通度的 Harary 图。第二个生成器给出在给定节点连通度和节点数下最小化图边数的 Harary 图。
参考文献#
Harary, F. “The Maximum Connectivity of a Graph.” Proc. Nat. Acad. Sci. USA 48, 1142-1146, 1962.
|
返回具有给定节点数和边数的 Harary 图。 |
|
返回具有给定节点连通度和节点数的 Harary 图。 |
Cographs (补图)#
Cographs 的生成器
Cograph 是一个不包含四个顶点上的路径的图。Cographs 或 \(P_4\) 无图可以通过对单个顶点进行不相交并集和补运算获得。
参考文献#
D.G. Corneil, H. Lerchs, L.Stewart Burlingham, “Complement reducible graphs”, Discrete Applied Mathematics, Volume 3, Issue 3, 1981, Pages 163-174, ISSN 0166-218X.
|
返回一个具有 \(2 ^ n\) 个节点的随机 cograph。 |
区间图#
区间图的生成器。
|
为给定的区间列表生成一个区间图。 |
数独#
数独图的生成器
本模块提供了 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 x n^2 网格的单元格。两个不同的顶点相邻当且仅当它们属于同一行、同一列或同一 n x n 宫。
参考文献#
Herzberg, A. M., & Murty, M. R. (2007). Sudoku squares and chromatic polynomials. Notices of the AMS, 54(6), 708-717.
Sander, Torsten (2009), “Sudoku graphs are integral”, Electronic Journal of Combinatorics, 16 (1): Note 25, 7pp, MR 2529816
Wikipedia contributors. “Glossary of Sudoku.” Wikipedia, The Free Encyclopedia, 3 Dec. 2019. Web. 22 Dec. 2019.
|
返回 n-数独图。 |
时间序列#
时间序列图
|
返回输入时间序列的可见性图。 |