Note

This documents the development version of NetworkX. Documentation for the current release can be found here.

发布日志

NetworkX 2.5版

发布日期:2020年8月22日

支持Python3.6、3.7和3.8。

发行说明

公告:NetworkX 2.5 .

网络X 2.4

发布日期:2019年10月16日

支持Python3.5、3.6、3.7和3.8。这是支持Python3.5的最后一个版本。

发行说明

公告:NetworkX 2.4 .

NetworkX 2.3

发布日期:2019年4月11日

支持python 3.5、3.6和3.7。这是我们第一个只发布Python3的版本。

发行说明

公告:NetworkX 2.3 .

NETWorkX 2.2

发布日期:2018年9月19日

支持python 2.7、3.5、3.6和3.7。这是最后一个支持python 2的版本。

发行说明

公告:NetworkX 2.2 .

NETWorkX 2.1

发布日期:2018年1月22日

支持python 2.7、3.4、3.5和3.6。

发行说明

公告:NetworkX 2.1 .

NETWorkX 2

发布日期:2017年9月20日

增加了对python 3.6的支持,放弃了对python 3.3的支持。

从1.x到2.0的迁移指南 .

发行说明

公告:NetworkX 2.0 .

NETWorkX 1.11

发布日期:2016年1月30日

增加了对python 3.5的支持,放弃了对python 3.2的支持。

集锦

pydot功能现在使用pydotplus。修复某些机器上的安装,并使用Appveyor进行测试。恢复布局例程的默认中心和比例。修复各种文档,包括示例中没有符号链接。现在可以使用readthedocs.org上的autosummary生成文档。

NETWorkX 1.10

发布日期:2015年8月2日

在此版本中不再支持python 2.6。

集锦

  • 连接的组件现在返回发电机

  • 新功能包括

    • 列举所有的族群,贪婪的着色,边缘的DFS,找到周期的直接支配者,和谐的中心性

    • Hopcraft最大匹配的karp算法

    • 最佳的枝和乔木。

    • all_simple_paths

  • 已从GML读取器/分析器中删除pyparsing依赖项

  • 改进流量算法

  • 与扩展图相关的新生成器。

  • 多部分图、非同构树、循环图的新生成器

  • 允许图表子类使用类似dict的对象代替dict

  • 添加了有序图子类

  • 添加了 Pandas 数据帧读/写。

  • g.edges()中的data关键字允许直接请求edge属性

  • 扩展节点子集的布局灵活性

  • Kanesky的割集和k_分量算法

  • 图的幂函数

  • 节点连通性近似

  • 过渡闭合、三元人口普查和反链

  • 商图与次式

  • DAG的最长路径

  • 模块化矩阵例程

NETWorks1.1.1

发布日期:2014年9月13日

小安装和文档问题的错误修复版本。

NETWorkX 1.9

发布日期:2014年6月21日

在此版本中不再支持python 3.1。

集锦

  • 完全重写具有向后不兼容接口的最大流和基于流的连接算法

  • 社区图生成器

  • Stoer–Wagner最小割算法

  • 线性时间欧拉电路算法

  • 线性代数包改为使用scipy稀疏矩阵

  • 代数连通性,费德勒向量,谱排序算法

  • 链路预测算法

  • Goldberg–Radzik最短路径算法

  • 半连通图与树识别算法

NETWorks1.1.1

发布日期:2013年8月4日

源程序包中缺少文件的错误修复版本。

NETWorkX 1.8

发布日期:2013年7月28日

集锦

  • 更快(线性时间)的图形测试和Havel Hakimi图形生成器

  • 有向拉普拉斯矩阵发生器

  • 卡茨中心算法

  • 生成所有简单路径的函数

  • 改进的形状文件阅读器

  • 二部图的更灵活的加权投影

  • 更快的拓扑排序,DAG的后代和祖先

  • 力定向布局的比例参数

错误修复

  • 有向图的平均加权连接性错误,具有自循环的校正归一化拉普拉斯函数,单节点图的负载介于两者之间,DFS/BFS树中缺少的孤立节点,使用l1对命中进行归一化,处理具有自循环的图的密度

  • 使用matplotlib更清晰地处理当前图形状态,pajek文件现在不写入麻烦的标题行,GEXF文件的默认alpha值,从yed图形读取曲线边。

有关此版本已关闭问题的完整详细信息(添加的功能和错误修复),请参阅:https://github.com/networkx/networkx/issues?里程碑=1&page=1&state=关闭

NETWorkX 1.7

发布日期:2012年7月4日

集锦

  • 用于k-clique社区查找、流层次、联合、不相交联合、组合和交集运算符的新函数,用于处理图列表,并创建二部图的双相邻矩阵。

  • 控制集、边缘控制集、独立集、最大集团和最小加权顶点覆盖的新近似算法。

  • 许多错误修复和其他改进。

有关此版本关闭的票证的完整详细信息(添加的功能和错误修复),请参阅: https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.7

NETWorkX 1.6

发布日期:2011年11月20日

集锦

新功能,用于查找连接点、生成随机二部图、构造邻接矩阵表示、形成图产品、计算分类系数、测量子图的中心性和可通信性、查找K族社区以及编写JSON格式输出。

使用d3 JavaScript库绘制和使用Cuthill McKee算法排序矩阵的新示例。

更有效地实现电流中间值和电流中间值和最短路径中间值的新近似算法。

对使用权重/成本/值的算法的“权重”属性的简化处理。见 版本1.6注释和API更改 .

更新了所有代码以使用pypy python实现http://pypypy.org,它可以在许多算法上产生更快的性能。

有关此版本关闭的票证的完整详细信息(添加的功能和错误修复),请参阅: https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.6

NETWorkX 1.5

发布日期:2011年6月4日

有关此版本关闭的问题的完整详细信息,请参阅: https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.5

集锦

新特点

错误修复

NETWorkX 1.4

发布日期:2011年1月23日

API更改

NETWorkX 1.3

发布日期:2010年8月28日

参见:https://networkx.lanl.gov/trac/timeline

新特点

API更改

  • minimum_spanning_tree() now returns a NetworkX Graph (a tree or forest)

NETWorkX 1.2

发布日期:2010年7月28日

参见:https://networkx.lanl.gov/trac/timeline

新特点

NETWorkX 1.1

发布日期:2010年4月21日

参见:https://networkx.lanl.gov/trac/timeline

新特点

API更改

返回词典

一些算法和degree()方法现在返回由节点而不是列表键控的字典。在某些情况下,有一个“with-labels”关键字不再是必需的。例如,

>>> G=nx.Graph()
>>> G.add_edge('a','b')
>>> G.degree()  
{'a': 1, 'b': 1}

询问单个节点的度数仍然返回单个数字

>>> G.degree('a')
1

以下内容现在默认返回词典(而不是列表),并且with_labels关键字已被删除:

下面现在默认返回字典(而不是列表)

  • pagerank()

  • hits()

添加节点

add_nodes_from 现在接受 (node, attrdict) 两元组

>>> G = nx.Graph()
>>> G.add_nodes_from([(1, {'color': 'red'})])

错误修复

  • 通过并集、交集和其他图形操作支持图形属性

  • 提高子图速度(以及相关算法,如Connected_components_subgraphs())

  • 在更多的运算符(例如union)中处理多图

  • 使用Pydot处理双引号标签

  • 正确规范无向图的中心性

  • 用l2范数规范化特征向量的中心性

  • read_gml() 现在返回多图

NETWorkX 1.0.1

发布日期:2010年1月11日

参见:https://networkx.lanl.gov/trac/timeline

清单中缺少setup.py的错误修复版本。

NETWorkX 1

发布日期:2010年1月8日

参见:https://networkx.lanl.gov/trac/timeline

新特点

此版本对图形API的某些部分进行了重大更改,以允许图形、节点和边缘属性。参见http://networkx.lanl.gov/reference/api_changes.html

  • 更新graph、digraph和multigraph类以允许属性。

  • 默认边缘数据现在是空字典(以前是整数1)

  • 差分和交集运算符

  • 平均最短路径

  • A*(A星)算法

  • 页面排名、点击率和特征向量中心性

  • 读取Pajek文件

  • 直线图

  • 最小生成树(Kruskal算法)

  • 密集稀疏的灌木林配筋布局

  • 随机聚类图生成器

  • 有向无标度图形发生器

  • 快速随机规则图生成器

  • 用Matplotlib改进边缘颜色和标签绘制

  • 更多信息,请参见 https://networkx.lanl.gov/trac/query?status=closed&group=milestone&milestone=networkx-1.0

实例

  • 更新以使用NetworkX-1.0 API

  • 图子类示例

NETWorkX 0.99

发布日期:2008年11月18日

参见:https://networkx.lanl.gov/trac/timeline

新特点

此版本对图形API的某些部分进行了重大更改。参见http://networkx.lanl.gov/reference/api_changes.html

  • 更新graph和digraph类,以使用加权图作为API中的默认更改,以简化性能和代码。

  • 新的多图表和多图表类(替换xgraph和xdigraph)

  • 使用Sphinx文件系统的更新http://networkx.lanl.gov/

  • 开发者网站:https://networkx.lanl.gov/trac/

  • 实验贴标机和贴标机

  • 已将包和文件布局移动到子目录。

错误修复

  • handle root=正确绘制图形的选项

实例

  • 更新以使用NetworkX-0.99 API

  • 绘图示例现在使用matplotlib.pyplot接口

  • 许多例子中的改进图纸

  • 新示例-参见http://networkx.lanl.gov/examples/

NETWorkX 0.37

发布日期:2008年8月17日

参见:https://networkx.lanl.gov/trac/timeline

NetworkX现在需要python 2.4或更高版本才能实现完整的功能。

新特点

  • 带matplotlib图纸的边缘着色和节点线条宽度

  • 更新pydot函数以使用pydot-1.0.2

  • 最大权重匹配算法

  • 三维OpenGL布局和绘图的通用图形界面

  • Pajek图形文件格式读写器

  • P2G图形文件格式读写器

  • 拓扑排序中的次排序

错误修复

  • 使用GML编写器更好地处理边缘数据

  • 默认数据为“无”的xgraph的边中间修复

  • 处理matplotlib版本字符串(允许“pre”)

  • pygraphviz(to_Agraph())的接口现在处理平行边。

  • 修复从xgraph到xgraph的多边缘复制错误

  • 使用scipy稀疏LIL矩阵格式而不是COO格式

  • 清除Barabasi-Albert模型的不明确案例

  • 绘制彩色节点和边缘时,更好地使用matplotlib处理彩色地图

  • 修复layout.py中的错误处理

实例

  • 显示三维绘图的素描图示例

NETWorkX 0.36

发布日期:2008年1月13日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • GML格式图形阅读器、测试和示例(football.py)

  • edge撊betweenness()和load撊betweenness()。

错误修复

  • 删除pygraphviz接口的过时部分

  • 改进Matplotlib版本字符串的处理

  • write_dot()现在写平行边和自循环

  • _bipartite()和bipartite_color()是否修复

  • 配置模型使用random.shuffle()加速

  • 使用指定的节点列表转换现在工作正常

  • VF2同构检查器更新

NETWorkX 0.35.1

发布日期:2007年7月27日

参见:https://networkx.lanl.gov/trac/timeline

小更新以修复导入读写问题并保持python2.3兼容性。

NETWorkX 0.35

发布日期:2007年7月22日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 强连接组件的算法。

  • Brandes Betweeness中心性算法(加权和非加权版本)

  • 加权图的紧密性中心性

  • DFS预订单、DFS后订单、DFS树、DFS继承者、DFS前置者

  • graphml、leda、sparse6和graph6格式的阅读器。

  • 允许将graphviz ou布局中的参数直接传递给graphviz

错误修复

  • 更详细的安装说明

  • 替换了DFS预订单、DFS后订单(请参见search.py)

  • 允许 Spectral 布局中的初始节点位置

  • 尝试绘制空图形时不报告错误

  • 将元组用作节点时正确报告错误114

  • 处理来自dict数据的不完整dict的转换

NETWorkX 0.34

发布日期:2007年4月12日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 图形类基准

  • brandes中间中心性算法

  • Dijkstra的前身和距离算法

  • XSLT将dia图转换为networkx

  • 边数(u,v)计算节点u和v之间的边数

  • 使用python安装程序运行测试u egg.py test(需要安装工具),否则使用python-c“import networkx;networkx.test()”

  • 是使用vf2算法的同构()。

错误修复

  • 邻居的加速

  • 简化的Dijkstra算法代码

  • 为最短路径提供更好的异常处理

  • 如果没有边缘U-V,get_edge(u,v)返回none(而不是exception)

  • Floyd_Warshall_数组为负权重固定

  • 图形图集的g467、docs和unittest修复错误

  • 不要将nan置于麻木或脆弱的稀疏邻接矩阵中

  • handle get_edge()异常(如果没有边缘,则返回none)

  • 在许多地方删除多余的KWDS参数

  • 多图的列表转换为dict时没有多计数边

  • 允许传递tuple以获取_edge()。

  • 节点/边缘之间的参数顺序错误

  • 使用Xgraph,边缘之间的距离不会失败

  • 不要为不在图中的节点(而是静默忽略)在边缘引发异常_ * and degree_*

NETWorkX 0.33

发布日期:2006年11月27日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 使用指定的颜色映射绘制边

  • 所有对最短路径的Floyd算法的更有效版本

  • 仅使用numpy,不推荐使用numeric

  • 在源包中包括测试(networkx/tests)

  • 在源包(Doc)中包含文档

  • 现在可以使用运行测试
    >>> import networkx
    >>> networkx.test()
    

错误修复

  • 阅读“Pickle Now Work Correctly with Windows

  • 将大模块重构为较小的代码文件

  • degree(nbunch)现在按与nbunch相同的顺序返回度数

  • degree()现在适用于multipedges=true

  • 更新节点边界和边缘边界以提高效率

  • 为图形类编辑文档,现在主要在info.py中

实例

  • 使用颜色映射绘制边

NETWorkX 0.32

发布日期:2006年9月29日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 更新以使用numpy-1.0x

  • 使蛋的使用成为可选:使用python设置_egg.py bdist_egg创建蛋

  • 二部图的生成器和函数

  • 树木和森林实验班

  • 支持新的pygraphviz更新(在nx Agraph.py中),请参阅http://networkx.lanl.gov/pygraphviz/了解pygraphviz的详细信息。

错误修复

  • 三角函数中特殊情况的正确处理

  • 文档中的拼写错误

  • 在最短路径和最短路径长度中处理特殊情况,允许最大深度的截止参数搜索

  • 更新示例:erdos renyi.py、miles.py、roget、py、特征值.py

实例

  • 期望度序列

  • 新的Pygraphviz接口

NETWorkX 0.31

发布日期:2006年7月20日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 任意节点重新标记(使用重新标记节点)

  • 将networkx图转换为/从python dict/list类型、numpy矩阵或数组类型以及scipy稀疏矩阵类型

  • 给定期望度序列的随机图生成器

错误修复

  • 允许使用Pylab绘制没有边的图形

  • 在dijkstra中使用更快的heapq

  • 如果X窗口不可用,不要抱怨

实例

  • 更新绘图示例

NETWorkX 0.30

发布日期:2006年6月23日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 更新以使用python 2.5

  • 最短路径和Dijkstra的双向版本

  • 单源最短路径和所有对最短路径

  • 生成最大S度量图的S度量和实验代码

  • 双边交换和连接的双边交换

  • 所有对最短路径的Floyd算法

  • 将Unicode图形数据读写到文本文件中

  • 读取和写入yaml格式文本文件,http://yaml.org

错误修复

  • 速度改进(子图的更快版本,已连接)

  • 增加了累积分布和修改的离散分布实用程序

  • 如果有向图发送到连接的组件例程,则报告错误

  • 删除了导致混淆的许多函数的标签关键字

  • 最短路径例程中的函数名更改

  • 对nbunch(节点束)进行更明智的内部处理,如果nbunch不是节点或不可访问,则引发异常

  • 在io.py中更好的关键字处理允许读取多个图形

  • 不要在图形布局和绘图中混合数字和numpy数组

  • 重新绘制图形布局时避免自动重新调整matplotlib轴

实例

  • Unicode节点标签

NETWorkX 0.29

发布日期:2006年4月28日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 阈值图的中间值、特征值、特征向量和谱投影算法

  • 可用时使用numpy

  • 密集随机图生成器

  • 一些有向图的生成器:Krapivsky和Redner的gn、gnr和gnc

  • 网格图生成器现在被索引元组标记。用于操作标签的助手函数。

  • relabel_nodes_with_function

错误修复

  • 中间中心性现在正确地使用brandes定义,并且在主循环之外有规范化选项。

  • 空图现在标记为空图(n)

  • 使用的python2.4生成器功能的最短路径长度

  • 一次错误导致的度序列树关闭导致不连续标签

  • 删除了周期网格图,取而代之的是周期=真的网格图

NETWorkX 0.28

发布日期:2006年3月13日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 用指定顺序的行和列构造拉普拉斯函数的选项

  • 将节点标签转换为整数以使用排序顺序的选项

  • 前置任务(g,n)函数,从g的广度第一次搜索(从节点n开始)返回具有前置任务的节点字典。https://networkx.lanl.gov/trac/ticket/26

实例

  • 二项图中巨分量的形成:

  • 国际象棋大师赛:

  • 图库https://networkx.github.io/documentation/latest/auto_examples/index.html

错误修复

  • 调整随机图的名称。
    • erdos ou renyi_graph=二项式_graph=gnp_graph:n个边缘概率为p的节点

    • GNM图:n个节点和m个边

    • 快速GNP随机图:稀疏图的GNP(小P)

  • 文档包含以utf-8编码的barab_si、bollob_s、erd_s和r_nyi的正确拼写。

  • 通过在networkx.path中使用更快的bfs算法提高连接的组件和相关功能的速度https://networkx.lanl.gov/trac/ticket/27

  • xgraph和xdigraph多边=删除边上的真产生错误

  • 已清除docstring错误

  • 规范化某些图的名称以生成表示调用序列的字符串

NETWorkX 0.27

发布日期:2006年2月5日

参见:https://networkx.lanl.gov/trac/timeline

新特点

  • 稀疏二项图:稀疏随机图的快速图形生成器

  • IO.py中的读/写例程现在处理xgraph()类型和gzip和bzip2文件

  • 读/写例程类型的可选映射,以允许在读时动态转换节点和边缘数据类型

  • 与有向图和neighbors()和edges()的定义相关的重大更改。对于有向图边=出边。Neighbors现在返回具有平行边的图形可能重复的相邻节点列表,请参阅https://networkx.lanl.gov/trac/ticket/24

  • 在有向图中添加出边、入边和对应的出邻和入邻。对于有向图边=出边。

实例

  • 米纳尔关于拿破仑俄国战役的数据

错误修复

  • xgraph(multipedges=true)返回get_edge()的边列表的副本

NETWorkX 0.26

发布日期:2006年1月6日

新特点

  • 与Pylab的绘图界面更简单

  • g.info(node=none)函数返回有关图形或节点的简短信息

  • adj_matrix现在接受可选的nodelist来强制排序矩阵中的行/列。

  • 到graphviz的可选pygraphviz和pydot接口现在可以调用为“graphviz”,首选pygraphviz。使用draw-graphviz(g)。

实例

  • 几个新的例子展示了如何绘制具有不同属性的节点、边和标签的图形。

错误修复

  • 所有图的默认数据类型现在为无(是整数1)

  • 如果添加的节点已经存在,则从现在开始添加节点不会删除边缘

  • 在生成的图中添加了缺少的名称

  • 图中节点的索引默认从零开始(为1)

NETWorkX 0.25

发布日期:2005年12月5日

新特点

  • 使用安装工具http://peak.telecommunity.com/devcenter/setuptools进行安装

  • 改进了测试基础设施,现在可以运行python setup.py测试

  • 添加了使用pygraphviz绘制图形的接口https://networkx.lanl.gov/pygraphviz/

  • 是u directed()函数调用

实例

  • 电子邮件示例演示如何将xdigraph与python对象一起用作边缘数据

文档

  • 重新格式化菜单,对自述文件的微小更改,更好的样式表

错误修复

  • 在所有情况下,对图表类型使用create_using=而不是result=关键字

  • 群集中0级和1级节点缺少权重

  • 配置模型现在使用xgraph,返回与输入序列具有相同程度序列的图。

  • 固定的dijkstra优先级队列

  • 固定非递归拓扑排序和有向非循环图

NETWorkX 0.24

发布日期:2005年8月20日

错误修复

  • Dijkstra算法代码更新

  • fs_继承者现在调用正确的搜索方法

  • 在digraph.reverse()中改为list-understruction,以实现python2.3的兼容性

  • Barabasi-Albert图形发生器固定

  • 尝试添加自循环应添加节点,即使不允许并行边缘

NETWorkX 0.23

发布日期:2005年7月14日

NetworkX Web位置已更改:

http://networkx.lanl.gov/ - main documentation site http://networkx.lanl.gov/svn/ - subversion source code repository https://networkx.lanl.gov/trac/ - bug tracking and info

重要变化

NetworkX中的命名约定已更改。包名“nx”现在是“networkx”。

导入networkx包的建议方法是

  • 导入网络

  • 将NetworkX导入为NX

  • 从NetworkX导入*

新特点

  • 有向图反向

  • 图形生成器
    • 瓦特-斯特罗盖特图现在做重新布线方法

    • 旧瓦茨-斯特罗加茨-图->纽曼-瓦茨-斯特罗加茨-图

实例

文档

  • 已更改以反映NX NetworkX更改

  • 主网站现在是https://networkx.lanl.gov/

错误修复

  • 修正了IO.py中读取有向图的逻辑。

  • 基于路径的中心性度量(中间性、紧密性)进行了修改,以便它们在未连接的图上工作,并产生与每个连接的组件单独考虑时相同的结果。

NETWorkX 0.22

发布日期:2005年6月17日

新特点

  • 拓扑排序,有向无环图(DAGS)的测试

  • 加权图中最短路径的Dijkstra算法

  • 图纸尺寸为n的多维布局

  • 使用VTK进行三维渲染演示

  • 图形生成器
    • random_powerlaw_tree

    • dorogovtsev_goltsev_mendes_graph

实例

  • Kevin Bacon电影演员图表:示例/Kevin_Bacon.py

  • 计算拉普拉斯图的特征值:示例/特征值.py

  • 小图图集:示例/atlas.py

文档

  • 重写安装脚本以在指定的文档目录中安装文档和测试

错误修复

  • 使用非节点、不可iterable项处理对edges()的调用。

  • 截短的四面体图显然是错误的。

  • 加快中间核心性代码

  • bfs路径长度现在返回正确的长度

  • 如果搜索目标不在源的已连接组件中,则捕获错误

  • 用名称标记内部函数的代码清理

  • 已将导入语句行更改为始终使用“import nx”保护名称空间

  • 添加了其他小错误修复和测试