NetworkX 1.10#
上映日期:2015年8月2日
在此版本中,不再支持Python2.6。
集锦#
连接的组件现在返回生成器
新增功能包括
枚举团、贪婪着色、边DFS、查找循环立即支配符、调和中心性
最大匹配的Hopraft--Karp算法
最佳的分枝和树冠。
all_simple_paths
从GML读取器/解析器中移除了pyparsing依赖
改进的流动算法
与扩展图相关的新生成器。
多部图、非同构树、循环图的新生成元
允许图子类使用类似字典的对象来代替字典
添加了有序图的子类
已添加熊猫数据帧读/写。
G.Edges()中的数据关键字允许直接请求边属性
扩展了节点子集的布局灵活性
关于割集和k_分支的Kanesky算法
图的幂函数
节点连通性的近似值
传递闭包、三元普查与反链
商图与子式
DAG的最长路径(_P)
模块化矩阵例程
API更改#
[#1501]
connected_components
,weakly_connected_components
和strongly_connected_components
现在返回一组节点的生成器。以前,生成器是节点列表。此pr还重构了connected_components
和weakly_connected_components
实现使它们更快,尤其是对于大型图形。[#1547] 这个
func_iter
DI/MULTI/GRAPHICS类中的函数将在Networkx2.0版本中删除。func
会表现得像func_iter
返回迭代器而不是列表。这些函数在networkx 1.10版本中已被弃用。
新功能#
[#823] A
enumerate_all_cliques
功能添加到集团包中 (networkx.algorithms.clique
)用于枚举无向图的所有组(包括非最大组)。[#1105] 彩色包装 (
networkx.algorithms.coloring
)是为图形着色算法创建的。最初,Agreedy_color
函数用于使用各种贪婪启发式对图着色。[#1193] 一种新的发电机
edge_dfs
,添加到networkx.algorithms.traversal
,实现图中边的深度优先遍历。这补充了图中节点深度优先遍历所提供的功能。对于多重图,它允许用户精确地知道遍历中跟随的边。支持所有NetworkX图形类型。遍历还可以反转边缘方向或忽略它们。[#1194] A
find_cycle
函数添加到networkx.algorithms.cycles
打包以在图中查找循环。可以选择反转或忽略边缘方向。[#1210] 为复制发散模型添加一个随机生成器。
[#1241] 一个新的
networkx.algorithms.dominance
增加了有向图上的支配/支配算法包。它包含一个immediate_dominators
用于计算直接支配者/支配者树的函数和dominance_frontiers
计算优势边界的函数。[#1269] GML阅读器/解析器和编写器/生成器被重写,以消除对pyparsing的依赖,并支持处理任意图形数据。
[#1280] 中的网络单纯形方法
networkx.algorithms.flow
重新编写包以提高其性能并支持多个和断开连接的网络。在某些情况下,新的实现比旧的实现快两到三个数量级。[#1286] 加上了马尔古利斯——加伯——伽利略图
networkx.generators
.[#1306] 增加了弦P循环图,这是一个3-正则扩张图族的轻度显式代数构造。同时,将现有的扩展器图生成器函数(用于Margulis-Gabber-Galil扩展器)和新的弦循环图函数移动到新模块,
networkx.generators.expanders
.[#1314] 允许用dict重写基类dict,如:orderedgraph、thingraph、printgraph等。
[#1321] 补充
to_pandas_dataframe
和from_pandas_dataframe
.[#1322] 添加了Hopcroft--karp算法,用于在二部图中查找最大基数匹配。
[#1336] 在g.edges中展开数据关键字并添加默认关键字。
[#1338] 为寻找最佳的树枝和乔木增加了支持。
[#1340] 增加了一个
from_pandas_dataframe
接受 Pandas 数据帧并返回新图形对象的函数。数据帧至少必须有两列,定义构成边缘的节点。但是,函数还可以处理任意数量的附加列作为边缘属性,如“weight”。[#1354] 扩展的布局功能增加了绘制具有不同布局的节点子集的灵活性,并使每个布局围绕给定坐标居中。
[#1356] 添加了默认图形类的有序变量。
[#1360] 增加了谐波中心性
network.algorithms.centrality
.[#1390] 这个
generators.bipartite
已移至algorithms.bipartite.generators
. 函数没有在主命名空间中导入,因此要使用它,必须导入二部分包。[#1391] 增加了Kanevsky在无向图中查找所有最小尺寸分离节点集的算法。它被实现为节点切割集的生成器。
[#1399] 简单图的加幂函数
[#1405] 增加了基于White和Newman近似算法的节点连接快速近似,用于在两个节点之间找到独立于节点的路径。
[#1413] 增加了有向无环图的传递闭包和反链函数
algorithms.dag
. 反链函数由PeterJipsen和Franco Saliola提供,最初是为SAGE项目开发的。[#1425] 为完整的多部分图形添加了生成器功能。
[#1427] 添加了非同构树生成器。
[#1436] 将循环图的生成器函数添加到
networkx.generators.classic
模块。[#1437] 增加了计算商图的功能;还创建了一个新模块,
networkx.algorithms.minors
.[#1438] 为DAG添加了最长路径和最长路径长度。
[#1439] 添加了节点和边缘收缩函数
networkx.algorithms.minors
.[#1445] 增加了一个新的模块化矩阵模块
networkx.linalg
以及相关的频谱函数networkx.linalg.spectrum
模块。[#1447] 添加了一个函数来生成所有从最短路径开始的简单路径,该函数基于Yen的算法在
algorithms.simple_paths
.[#1455] 将定向模块矩阵添加到
networkx.linalg.modularity_matrix
模块。[#1474] 添加
triadic_census
函数;还创建一个新模块,networkx.algorithms.triads
.[#1476] 添加用于测试图是否具有加权边缘或负加权边缘的函数。还添加了一个函数,用于测试图是否为空。这些是
is_weighted
,is_negatively_weighted
和is_empty
.[#1481] 增加了约翰逊算法;一个最短路径的算法。它解决了所有对的最短路径问题。这是
johnson
在algorithms.shortest_paths
[#1414] 增加了用于识别的穆迪和怀特算法
k_components
在图中,它基于Kanevsky的算法查找所有最小尺寸的节点切割集(实现于all_node_cuts
1391)。[#1415] 添加快速近似值
k_components
到networkx.approximation
包裹。这是基于White和Newman近似算法来查找两个节点之间的独立于节点的路径(请参见1405)。
删除的功能#
[#1236] 遗产
ford_fulkerson
最大流量功能被删除。使用edmonds_karp
相反。
其他变更#
[#1192] 不再支持python 2.6。