网络X 2.5#

上映日期:2020年8月22日

支持Python3.6、3.7和3.8。

NetworkX是一个用于创建、操作和研究复杂网络的结构、动力学和功能的Python包。

欲了解更多信息,请访问我们的 website 还有我们的 gallery of examples 。请将意见和问题发送到 networkx-discuss mailing list

集锦#

这个版本是92个贡献者10个月工作的结果,有200多个提交。亮点包括:

  • 放弃了对Python3.5的支持。

  • 添加Pathlib支持以处理文件。

  • 提高性能。

  • 更新文档和测试。

  • 删除了设计用于Python2的代码。

新功能:

  • lukes_partitioning

  • 三元分析函数

  • 营养水平分析功能

  • d_separated

  • 正则图度量和其他正则图度量吗

  • 使用Weisfeiler-Lehman方法的图哈希

  • 公共邻居中心度(CCPA链路预测)

  • max_weight_clique

  • 路径权重和路径

  • rescale_layout_dict

  • junction_tree

新发电机:

  • paley_graph

  • interval_graph

新布局:

  • multipartite_layout

改进#

  • 添加治理文档、开发人员指南和社区结构

  • 实现显式弃用策略。

  • 启动NX增强建议(NXEP)系统

  • 优化单源最短路径

  • 在最短路径例程中改进了一致的“权重”规范

  • 减少numpy.matrix公司被numpy阻止的用法。

  • 改进的线条颜色

  • 更好的搜索引擎处理文档

  • 格点和网格图以及网格二维图可以使用dim=tuple

  • 修复kamada_kawai_布局算法的初始值设定项

  • 道德和阈值函数现在包含在命名空间和文档中

  • 绘制时更好地缩放箭头

  • 更统一的随机龙虾图生成

  • 允许在连接的组件上迭代期间编辑图形

  • pandas数据帧转换中更好的列处理

  • 允许simrank_与有向图输入的相似性

  • 确保VoteRank能力为非负

  • 比克林加速

  • 加速负重循环检测

  • tree_isomorphism

  • rooted_tree_isomorphism

  • Gexf边缘属性“label”可用

API更改#

  • 在中启用“复制”标志参数 contracted_nodes

  • 允许部分周期晶格

  • 最小节点切的返回值现在总是一个集合

  • 从create_py_random_state删除未使用的“has_numpy”参数

  • 修复了绘制空节点和边时的返回值

  • 允许边集和冻结集作为输入nx.图形()

  • “重量”可用于astar、directionalu dijksta、all_shortest_路径

  • 允许GraphML边缘写入的命名键ID

  • 所有关键字现在都在中检查有效性nx.绘制和朋友们

  • EdgeDataView“in”运算符检查节点是否“in nbunch”

  • 从完全匹配条件中移除最小权重匹配条件

  • 在bfs遍历中对邻居排序的选项

  • drawu networkx接受边缘列表的numpy数组

  • 将2个节点映射到同一节点的重新标记节点现在可以创建multiedge

  • steiner_-tree与多重图一起工作

  • 添加 show kwarg观景室(4155)

  • 准备将弦图转换成切面图

  • GraphML reader关键字force_multigraph即使没有多条边也可以创建多重图

贬抑#

  • [#3680] 贬低 make_str(x) 对于 str(x) . 贬低 is_string_like(obj) 对于 isinstance(obj, str) .

  • [#3725] 贬低 literal_stringizerliteral_destringizer .

  • [#3983] 贬低 reversed 上下文管理器。

  • [#4155] 贬低 display_pygraphviz .

  • [#4162] 贬低 chordal_graph_cliques 返回集合。

  • [#4161] 贬低 betweenness_centrality_source .

  • [#4161] 贬低 edge_betweeness .

  • [#4161] 重命名 _naive_greedy_modularity_communities 作为 naive_greedy_modularity_communities .

合并的请购单#

共提交了256个更改。

  • 凹凸释放版本

  • 更新发布过程

  • 放弃对Python3.5的支持

  • 修复打印错误文档

  • 删除旧的Python2代码

  • 启用更多doctest

  • 修正pydot测试

  • 不清楚如何测试test helper函数

  • py3.4中引入的Pathlib

  • 使用删除代码系统版本信息检测Python 2

  • 使用收益率

  • PEP8测试修复

  • 删除未使用的导入

  • 使用pytest.importorskip

  • PEP8修复

  • 删除未使用的导入

  • 添加pep8ˉspeakes conf

  • 使用itertools累加

  • 修复了3610问题:的version属性中的错误gexf.py

  • 忽略W503

  • 运行不带可选依赖项的doctest

  • 缺少依赖项时跳过doctest

  • 删除sed导入

  • 启用测试(#3678)

  • contracted_nodes 添加了复制标志(#3646)

  • 不推荐制造商

  • 不推荐使用字符串

  • 修复PEP8问题

  • 启用Thinggraph测试(#3681)

  • 优化单条最短路径长度(3647)

  • 修复问题3431:在输入错误的情况下返回错误以生成小图形(#3676)

  • 避免因进口而重复测试(#3684)

  • 修正错误:拉普拉斯语->拉普拉斯语(#3689)

  • 添加测试

  • Lukes算法实现(#3666)

  • 移除使用星图工作的垫片

  • 添加回库

  • 向LineCollection添加colormap和颜色限制(#3698)

  • 修复matplotlib不推荐使用(#3697)

  • 适应SciPy CoC

  • 更新文档以更准确地了解G.neighbors的速度(#3699)

  • 使用规范url帮助搜索引擎

  • 删除重复许可证参数(#3710)

  • 在一些地方修复异常的文档问题

  • 修复更多文档问题,但有例外

  • 删除旧的Python2代码

  • 从模块顶部移除锅炉板

  • 删除多余的编码信息

  • 更新示例

  • 简化包docstring

  • 从非可执行文件中删除shebang

  • 添加参与者

  • K-桁架定义为(K-2)三角形中的边,而不是K三角形(#3713)

  • 在Python3.8上启用可选测试

  • 修复test_numpy_类型以在python3.8下通过

  • 向数据文件添加链接

  • 不推荐使用Python2/3兼容性代码

  • 更新样式

  • 更新样式

  • 单独的易安装和难安装可选要求

  • 默认情况下安装可选依赖项

  • 重构测试

  • 子图复制的示例代码:在is_multigraph(#3734)中添加括号

  • 修正了打字错误(#3735)

  • 修复引文链接(#3741)

  • 从中删除f字符串设置.py清除错误信息<py3.6(#3738)

  • 3511 gml列表支持(#3649)

  • 添加了linestyle作为参数(#3747)

  • 链接到所需文件,例如(#3752)

  • 修正了一个打字错误

  • 来自yohm/patch-1的合并请求#3759

  • 删除未使用的变量,以便网格图支持dim=tuple(#3760)

  • 数独生成器问题3756(#3757)

  • 固定单节点外壳在shall_布局中的缩放比例(#3764)

  • 添加函数()

  • 提高测试覆盖率

  • 更新contribs脚本

  • 将%-格式转换为fstring

  • 升级至Py36语法

  • 升级至Py36语法

  • 更新字符串格式

  • 修复scipy弃用警告

  • 更新年份

  • 使已知警告静音(#3770)

  • 修复asyn_fluidc的docstring(#3779)

  • 修复#3703(#3784)

  • 修复kamada_kawai_布局的初始值设定项(networkx#3658)(#3782)

  • 小意见问题(#3787)

  • 向主命名空间添加道德和阈值包(#3788)

  • 将权重函数添加到双向#dijkstra和astar(#3799)

  • 绘制定向边时,请适当收缩箭头的源边。#3805(#3806)

  • 部分周期格的选项(networkx)(#3807)

  • 防止子图上的键错误是单态的(#3798)

  • 营养水平#3736(#3804)

  • UnionFind的union无法准确跟踪集合大小(#3810)

  • 删除空白(#3816)

  • 重新考虑龙虾发电机(#3822)

  • 修复打字错误(#3838)

  • 修复稍微混淆意思的排字错误(#3840)

  • 添加了问题的修复程序#3846(#3848)

  • 从create_py_random_state(#3852)中删除未使用的变量has_numpy

  • 修复绘制空节点和边时的返回值#3833(#3854)

  • 使连接的组件安全到组件集突变(#3859)

  • 修正docstring(#3866)中的示例

  • 更新自述文件.rst网站链接到https(#3888)

  • 打字错误(#3894)

  • 制造的贡献.rst更清晰(#3895)

  • 固定文档nx.信息(),以及必要的测试(#3893)

  • 为jit_data func(#3891)添加了json转储的默认参数

  • 固定的有向图到有向图(3909)

  • 使用Sphinx 3.0.1

  • 修正Sphinx的贬损

  • 向文档添加徽标

  • 允许边缘节点集(#3907)

  • 将“id”强制转换为int()失败时添加额外信息。(决议#3910)(#3916)

  • 添加paley graph(#3900)

  • 将paley graph添加到doc(#3927)

  • 更新astar.py公司(3947)

  • 对位置参数使用关键字(#3952)

  • 修复文档(#3959)

  • 为GraphML写入添加命名键id选项。(3960)

  • 修复文档(#3958)

  • 正确处理所有最短路径中的零权重边(#3783)

  • 修复文档错误(#3965)

  • 修复:simrank_similarity_numpy的文档(#3954)

  • 修复#3930(源列和目标列在转换为pd数据帧)(3935)

  • 为#3948(#3949)的最短简单路径添加权重函数

  • 可通信性的固定定义(#3973)

  • 修复simrank_与有向图输入的相似性(#3961)

  • 固定削弱投票能力(#3970)

  • 实现了kernighan_-lin_二等分(#3858)的快速扫描算法

  • 修复问题#3926(#3928)

  • 更新贡献者.rst(3982)

  • 不推荐上下文管理器反转,而支持反向视图(#3983)

  • 更新贡献者.rst(3987)

  • voterank的增强功能(#3972)

  • 添加d-分离算法(#3974)

  • DOC:增加见另一节查找周期(#3999)

  • 改进子图文档视图过滤器

  • 修复中的异常原因日期(4000英镑)

  • 对to网络x图中的异常使用raise from(#4009)

  • 修复12个模块中的异常原因和消息(#4012)

  • 修复打字错误: np.int > np.int_ (4013)

  • 修复打字错误(#4017)

  • 变更文件(#3981)

  • 正则图的算法(#3925)

  • 打字手应该是汉斯(#4025)

  • DOC:添加测试子弹到贡献。(4035)

  • 更新Sphinx

  • 更新可选/测试部门

  • 添加治理/价值观/nexp/路线图

  • 改进教程中“无”的格式(#3986)

  • 修正了docstring(#3892)中的有向图拼写

  • 更新Py3文档的链接(#4042)

  • 添加仅清除边缘的方法(#3477)

  • 修复代码库中的异常原因和消息(#4015)

  • 显式绘制网络句柄

  • 返回空生成器而不是空列表(#3967)

  • 正确推断numpy float类型(#3919)

  • 维护:从“图形6字节”arg/docs更新。(4034)

  • 向文档添加URL/横幅/标题栏(#4044)

  • 添加负循环检测启发式(#3879)

  • 删除未使用的导入(#3855)

  • 修正了generate_gml(G,stringizer=None)(#3841)中的错误

  • k<2时引发网络错误(#3761)

  • 维护:rmnp矩阵来自alg。连接模块

  • 维护:rmnp矩阵从属性_ac。

  • MAINT,TST:测试代数连通性中的参数化方法。

  • 维护,TST:参数化巴克敏斯特富勒烯试验。

  • MAINT,TST:删除未使用的方法类attr

  • 维护,TST:参数化测试频谱排序。

  • 排除自/递归边(#4037)

  • WIP:更改边缘数据视图 __contains__ 功能(第二次尝试)(#3845)

  • 多图简单路径的索引边(#3358)

  • ENH:添加新的图形哈希特性

  • 修正熊猫的贬损

  • 组织删除不推荐的代码

  • 更新sphinx

  • ENH:给GED添加根和超时(#4026)

  • 使画廊更突出

  • 为区间图及其单元测试添加一个实现(#3705)

  • 修复了kamada_kawai_layout docstring(#4059)中的打字错误

  • 从最小重量完全匹配中删除完整性条件(#4057)

  • 实现了多部分布局(#3815)

  • 增加了新的链路预测算法(CCPA)(#4028)

  • 在bfs遍历期间添加对节点邻居排序的选项(#4029)

  • TST:从测试中删除int64规范。(4055)

  • 运行pyupgrade--py36plus

  • 删除尾随空格

  • 告诉psf/black忽略特定np.数组

  • 格式w/黑色

  • 为psf/black添加预提交钩子

  • 来自jarrodmillman/black的合并请求4060

  • 修复匹配docstrings(#4063)中的一些键入错误

  • 修复了“到”scipy“稀疏”矩阵函数(#3985)的错误

  • 最小重量完全匹配的更新文档(#4062)

  • 添加最大权重团算法(#4016)

  • 创建networkx对象后清除pygraphviz对象(#4070)

  • 在travis上使用更新的osx(#4075)

  • 安装后更新Python()

  • 将链接添加到黑色(#4078)

  • 改进了有关erdos reyni图形生成器别名的文档(#4074)

  • 维护:从安装中删除依赖项版本信息(#4081)

  • 简化顶层目录(#4087)

  • DOC:修复laplacianmatrix中的返回类型。(4090)

  • 向文档添加模块化(#4096)

  • 允许G.移除(nx.selfloops_边(G) )(#4080)

  • 维护:rm private fn支持numpy builtin。(4094)

  • 允许在from_pandas_edgelist(#4076)中为MultiEdge提供自定义键

  • 固定平面布局docstring(#4097)

  • 文件:改写:numpy.matrix公司

  • 维护:rm内部往返矩阵

  • 来自rossbar/rm npmatrix的合并请求4093

  • 删除版权样板(#4105)

  • 更新贡献者指南(#4088)

  • 添加计算指定路径的路径成本的函数(#4069)

  • 为from_pandas_edgelist(#4108)更新docstring

  • 将最大重量团添加到doc(#4110)

  • 更新折旧策略t(#4112)

  • 改进模块化计算(#4103)

  • 添加团队库(#4117)

  • CI:文档构建的设置循环CI(#4119)

  • 生成pdf(#4123)

  • 博士:来自教程阅读的建议和改进(#4121)

  • 启用travis上的3.9-dev(#4124)

  • 修复具有多个属性的parse_edgelist行为(#4125)

  • CI:CI Latex 安装问题的临时修复(#4131)

  • 更新draw_networkx以接受边缘列表的numpy数组(#4132)

  • 添加树同构(#4067)

  • 维护:切换到基于abc的isinstance checks in_networkx_graph(#4136)

  • 使用dict而不是OrderedDict,因为dict默认是从python3.6中排序的。(4145)

  • 维护:解析边缘列表的链接地址信息。(4128)

  • 更新apt-get-on-circleci-image(#4147)

  • 添加重新缩放布局图标以更改布局图标的比例(#4154)

  • 更新依赖项

  • 从需求中删除gdal

  • 重新标记节点现在在多重图中保留边(#4066)

  • 维护,TST:提高nx图像模块(#4156)的覆盖范围

  • 通过后处理让steiner_-tree处理多重图(#4160)

  • 1012(#4004)连接树

  • API:添加 show kwarg可观看_pygraphviz。(4155)

  • 准备将弦图转换成切面图

  • 文档更新(#4161)

  • 从doctests删除不必要的nx导入(#4163)

  • graphml中的多重图,具有明确的边ID#3470(#3763)

  • 更新sphinx dep(#4164)

  • 在GEXF writer中添加边缘标签作为可选属性(#3347)

  • v2.5发行说明初稿(#4159)

  • 指定2.5rc1版本

  • 凹凸释放版本

  • 更新发行说明中的反对意见(#4166)

  • DOC:更新阈值模块中公共函数的docstrings(#4167)

  • 在docstrings中格式化python(#4168)

  • DOC,BLD:修复来自标记错误的DOC build警告。(4174)

它包含以下3个合并:

  • 修正了一个打字错误(#3759)

  • 使用psf/黑色(#4060)

  • 维护:替换to numpy矩阵和from numpy matrix(#4093)的内部使用

贡献者#

  • 阿德南·阿卜杜勒穆塔莱布

  • 阿比希

  • 安托万-H

  • 萨利姆·贝尔哈德德

  • 罗斯巴诺夫斯基

  • 卢卡斯·伯恩瓦尔德

  • 艾萨克划船

  • 凯利·布斯比

  • 马提亚斯·布鲁恩斯

  • 马穆特布鲁特

  • 吕迪格-布希

  • 卡皮纳托

  • 陈尼科斯

  • 哈罗德·陈

  • 卡姆登脸颊

  • 丹尼尔

  • 丹尼尔·戴维斯

  • 巴斯蒂安·大卫

  • 克里斯托夫·戴尔

  • 唐古伊·法德特

  • 赵丰(赵峰)

  • 安迪·加菲尔德

  • 奥德绿

  • 德鲁H

  • 亚历克斯·亨利

  • 康洪进

  • 玛纳斯·乔希

  • 瑟伦·福格勒德·约根森

  • 阿布贝克卡尔

  • 福格特·卡尔斯多普

  • 纽约大学金

  • 唐·柯克比

  • 凯瑟琳·克莱斯

  • 史蒂夫·科瓦利克

  • 伊莉亚·库伦科夫

  • 惠权

  • 保罗·拉门斯

  • 扎卡里·劳伦斯

  • 桑干李

  • 安东洛德

  • 卢卡斯Lösche

  • 埃里克马

  • 麦基博伊12

  • 克里斯托夫·马丁

  • 亚历克斯·马文

  • 马特马斯特58

  • 詹姆斯麦克德莫特

  • 贾罗尔米尔曼

  • 伊布拉希姆·穆萨

  • Yohsuke Murase酒店

  • 尼尔

  • 哈里尼米宁

  • 丹尼·奈奎特

  • 卡洛斯·G·奥利弗

  • 胡安·奥杜兹

  • 奥斯汀奥尔

  • 佩德罗奥塔莱

  • 阿迪亚·帕尔

  • PalAditya

  • 何塞·皮尼拉

  • PranayAnchuri

  • 豪尔赫·马丁佩雷斯

  • 普拉迪普·雷迪·拉曼娜

  • 公羊轴

  • 大卫·拉德克利夫

  • 费德里克罗萨托

  • 汤姆罗素

  • 克雷格·施密特

  • 乔纳森·施耐德

  • 丹舒尔特

  • 塞思

  • 卡蒂克扬新加坡

  • 王松玉

  • 卡尼什克坦蒂亚

  • 杰里米亚斯·特劳布

  • 詹姆斯·特林布尔

  • 沙市特里帕提

  • 范德华

  • 约纳坦·韦斯特霍姆

  • 卡齐米尔兹·沃伊切霍夫斯基

  • 张文义

  • 阿德南穆塔莱布

  • 无熵的

  • 芝麻

  • 贝克多夫

  • 恩斯特克尔布

  • 法尔汉博拉尼亚

  • fj128

  • gseva公司

  • 豪切努克

  • 约翰萨根

  • 基里夫

  • 穆拉特古

  • 瑞安·杜夫

  • 萨乌帕

  • 汤姆比克111

  • 威尔佩波