NetworkX 2.6#

发布日期:2021年7月8日

支持Python 3.7、3.8和3.9。

这个版本在为即将到来的3.0版本做准备时有比平时更多的变化。 当前计划是在夏末发布2.7版本,并在2021年底发布3.0版本。 更多详情请参阅 从2.x迁移至3.0的迁移指南

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

更多信息,请访问我们的 网站 和我们的 示例库 。 请将评论和问题发送至 networkx-discuss 邮件列表

亮点#

这个版本经过11个月的工作,由91位贡献者提交了超过363个拉取请求。亮点包括:

  • 放弃对Python 3.6的支持

  • 放弃了对”decorator”库的依赖

  • 改进了示例库

  • 移除了支持Jython/IronPython的代码

  • 图对象的 __str__ 方法更具信息量和简洁性。

  • 改进了导入时间

  • 改进了测试覆盖率

  • 新的文档主题

  • 添加了绘制自环边的功能

  • 为旅行推销员问题添加了近似算法

新功能:

  • Panther算法

  • 最大割启发式

  • 等价类

  • 稀疏化

  • 随机有序树

  • 树的字符串表示

  • snap聚合

  • networkx.approximation.diameter

  • 分区质量

  • 突出的群组

  • 递归前缀树

  • 拓扑生成

NXEPs#

NetworkX Enhancement Proposals 捕捉了比典型拉取请求更大范围的更改,如对基本数据结构的更改。 自上一个版本发布以来,以下提案已经被考虑:

改进#

  • [ #3886 ] 添加了用于top-k相似性搜索的Panther算法。

  • [ #4138 ] 添加了用于近似解决最大割问题的启发式方法。

  • [ #4183 ] 将 equivalence_classes 添加到公共API中。

  • [ #4193 ] nx.info 更加简洁。

  • [ #4198 ] 改进了 transitivity 的性能。

  • [ #4206 ] UnionFind.union选择最重的根作为新根

  • [ #4240 ] 在新的 summarization 模块中添加了 dedensification 函数。

  • [ #4294 ] 添加了用于树的字符串表示的 forest_str

  • [ #4319 ] pagerank现在默认使用scipy。

  • [ #4841 ]

  • #4317 新增“source”参数到“has_eulerian_path”函数,用于查找从源节点开始的路径。

  • #4356 在加权图中使用“bidirectional_dijkstra”来改进“shortest_path”函数的性能。

  • #4361 为“triadic_census”函数添加“nodelist”参数。

  • #4435 改进“group_betweenness_centrality”函数。

  • #4446 添加“sources”参数,允许从节点子集计算“harmonic_centrality”。

  • #4463 添加“snap”摘要算法。

  • #4476 添加“diameter”函数,用于近似计算图的直径下界。

  • #4519 处理聚类算法中的负权重。

  • #4528 改进“edge_boundary”函数的性能。

  • #4560 添加“prominent_group”函数,根据group_betweenness_centrality在G中找到大小为k的显著群组。

  • #4588 当输入图的节点集不同时,图交集现在可以正常工作。

  • #4607 添加用于解决旅行推销员问题的近似算法,包括“christofides”、“greedy_tsp”、“simulated_annealing_tsp”和“threshold_accepting_tsp”。

  • #4640 “prefix_tree”现在使用非递归算法。原始的递归算法仍可通过“prefix_tree_recursive”使用。

  • #4659 为“barabasi_albert_graph”和“dual_barabasi_albert_graph”添加新的“initial_graph”参数,以向模型提供初始图。

  • #4690 “modularity_max”现在支持边权重。

  • #4727 改进“scale_free_graph”函数的性能。

  • #4739 添加“argmap”函数以替换装饰器库的依赖。

  • #4757 添加“topological_generations”函数用于DAG分层。

  • #4768 改进几何图生成器的可重现性。

  • #4769 添加“margins”关键字到“draw_networkx_nodes”函数,用于控制具有大节点大小的图像中的节点裁剪。

  • [ #4812 ] 使用 scipy 实现 hits 算法以提高性能。

  • [ #4847 ] 改进 scipy 实现的 hits 算法性能。

API更改#

  • [ #4183 ] quotient_graphpartition 参数现在接受字典。

  • [ #4190 ] 移除 tracemin_chol 。改用 tracemin_lu

  • [ #4216 ] 在 to_*_array/matrix 中,nodelist中的节点如果不在G中,现在会引发异常。 在转换之前,请使用G.add_nodes_from(nodelist)将它们添加到G中。

  • [ #4360 ] 内部 nx_pylab.draw_networkx_edges 现在总是生成 matplotlib.patches.FancyArrowPatch 列表, 而不是对于无向图使用 matplotlib.collections.LineCollection 。这统一了所有类型图的接口。 除了API更改外,这可能会导致大型图的性能退化。

  • [ #4384 ] 在 to_pandas_edgelist 中为MultiGraphs添加了 edge_key 参数。

  • [ #4461 ] 为 binomial_tree 添加了 create_using 参数。

  • [ #4466 ] relabel_nodes 过去对 mapping 中不是图中节点的键引发KeyError,但只有在 copyFalse 时才会这样做。现在, mapping 中不在图中的任何键都会被忽略。

  • [ #4502 ] 将 maximum_independent_set 移动到 approximation 模块中的 clique 模块。

  • [ #4536 ] 弃用 performancecoverage ,改用 partition_quality ,该函数同时计算这两个度量,并且更有效率。

  • [ #4573 ] label_propagation_communities 现在返回一个节点社区集合的 dict_values 对象,而不是社区集合的生成器。它仍可迭代, 因此在大多数用户代码中仍然有效,否则可以简单修复:例如,在函数调用周围添加 iter( ... )

  • [ #4545 ] prefix_tree 过去返回 tree, root ,但现在root始终为0,而不是生成的UUID字符串。因此该函数返回 tree

  • [ #4545 ] 从 networkx.generators.trees 中移除了变量 NIL =”NIL”。

  • [ #3620 ] 函数 naive_greedy_modularity_communities 现在返回一个社区列表(类似于 greedy_modularity_communities ),而不是社区的生成器。

  • [ #4786 ] 弃用 attrs 关键字参数,改为在 json_graph 模块中使用显式关键字参数。

  • [ #4843 ] 已删除未使用的 normalized 参数,从 communicability_betweenness_centrality 中移除。

  • [ #4850 ] 在adjacency_matrix中添加了 dtype 参数。

  • [ #4851 ] numeric_mixing_matrixdegree_mixing_matrix 的输出不再默认包含所有条目为零的行。这些函数现在接受一个由值键入行索引的参数 mapping ,以识别每一行。

  • [ #4867 ] 函数 spring_layout 现在忽略图中不在图中的’fixed’节点。

弃用功能#

  • [ #4238 ] 弃用 to_numpy_matrixfrom_numpy_matrix

  • [ #4279 ] 弃用 networkx.utils.misc.is_iterator 。 改用 isinstance(obj, collections.abc.Iterator)

  • [ #4280 ] 弃用 networkx.utils.misc.is_list_of_ints ,因为不再使用。 有关功能,请参阅 networkx.utils.misc.make_list_of_ints

  • [ #4281 ] 弃用 read_yamlwrite_yaml

  • [ #4282 ] 弃用 read_gpicklewrite_gpickle

  • [ #4298 ] 弃用 read_shpedges_from_linewrite_shp

  • [ #4319 ] 弃用 pagerank_numpypagerank_scipy

  • [ #4355 ] 弃用coreview Filtered相关类中的 copy 方法。

  • [ #4384 ] 弃用to_pandas_edgelist中未使用的 order 参数。

  • [ #4428 ] 弃用 jit_datajit_graph

  • [ #4449 ] 弃用 consume

  • [ #4448 ] 弃用 iterable

  • [ #4536 ] 弃用 performancecoverage ,改用 partition_quality

  • [ #4545 ] 弃用 generate_unique_node

  • [ #4599 ] 弃用 empty_generator

  • [ #4600 ] 弃用 default_opener

  • [ #4617 ] 弃用 hub_matrixauthority_matrix

  • [ #4629 ] 废弃了 Ordered 图类。

  • [ #4802 ] nx_yaml 函数已被移除,同时移除了对 pyyaml 的依赖。通过模块 __getattr__ 实现了移除,以修补与 pyyaml.Loader 相关的安全警告。

  • [ #4826 ] 废弃了 preserve_random_state

  • [ #4827 ] 废弃了 almost_equal

  • [ #4833 ] 废弃了 run

  • [ #4829 ] 废弃了 assert_nodes_equalassert_edges_equalassert_graphs_equal

  • [ #4850 ] 废弃了 adj_matrix

  • [ #4841 ] 废弃了 simrank_similarity_numpy

  • [ #4923 ] 废弃了 numeric_mixing_matrix

  • [ #4937 ] 废弃了 k_nearest_neighbors

已合并的PR#

  • 升级发布版本

  • 更新发布流程

  • 更新网站文档

  • 修复问题#4173:cytoscape_graph(input_data)修改了原始数据(#4176)

  • 修复nx_pylab.py中draw_networkx_edge_labels()的一些文档字符串问题+一个拼写错误(#4182)

  • TST:将dtype添加到pandas测试(#4185)

  • 商图的分区(#4183)

  • graphml:在857aa81之后重新添加图属性类型“long”(#4189)

  • 通过操作测试mac osx(#4201)

  • DOC:更新cytoscape模块中的文档字符串(#4180)

  • 重写add_nodes_from以放宽旨在允许ironpython pre-2.7.5的代码(#4200)

  • 加快传递性,删除多余的调用(#4198)

  • NXEP 2 —— 视图切片的API设计(#4101)

  • 清理旧平台(#4202)

  • 修复“topological_sort”拼写错误(#4211)

  • 使CPython上的可选依赖关系成为默认值

  • 简化导入

  • 从要求中填充setup.py需要

  • 更新依赖关系

  • 删除_CholeskySolver

  • to_numpy/scipy数组函数不应允许nodelist中的非节点(#4216)

  • 修复json_graph.tree中的“参见”链接(#4222)

  • MAINT:将is_string_like更改为isinstance(#4223)

  • 修复UnionFind.union以选择最重的根作为新根(#4206)

  • CI:配置circleCI以部署文档(#4134)

  • MAINT:更新nx.info(#4193)

  • 修复kernighan_lin_bisection中的索引(#4177)

  • CI:添加GH指纹(#4229)

  • 为circleci创建ssh目录

  • CI:更新circleci文档部署(#4230)

  • 撤消“CI:配置circleCI以部署文档(#4134)”(#4231)

  • DOC:为NXEP 2添加讨论。

  • 更新格式依赖关系

  • 使用black进行代码格式化

  • 使用black==20.8b1格式化

  • 通过black检查PR的格式(#4235)

  • TST:修改astar路径测试的启发式方法(#4237)

  • MAINT:废弃numpy矩阵转换函数(#4238)

  • 添加路线图(#4234)

  • 为图类添加nx.info到str dunder (#4241)

  • 文档:微调contract_nodes文档字符串的格式 (#4245)

  • 修复betweenness_centrality文档中的论文链接 (#4257)

  • 修复有向图中has_eulerian_path的错误 (#4246)

  • 添加PR模板 (#4258)

  • 使用种子使绘图固定 (#4260)

  • 更新巨型组件示例 (#4267)

  • 更新“带颜色的房屋”画廊示例 (#4263)

  • 用一个示例替换degree_histogram和degree_rank (#4265)

  • 更新Knuth miles示例 (#4251)

  • 更新“four_grids”画廊示例 (#4264)

  • 改善plot_labels_and_colors示例中标签的可读性 (#4266)

  • 改善画廊中chess_example的可读性 (#4252)

  • 修复多条边的contracted_edge错误 (#4274)

  • 为可重现性在画廊示例中添加种子 (#4276)

  • 在画廊中添加一个使用matplotlib的3D绘图示例 (#4268)

  • 废弃 utils.is_iterator (#4279)

  • 废弃utils.is_list_of_ints (#4280)

  • 改善plot_decomposition示例中的轴布局 (#4278)

  • 更新主页URL (#4285)

  • 为在Travis CI上部署构建文档 (#4286)

  • 添加简单图表和手动布局 (#4291)

  • 废弃nx_yaml (#4281)

  • 废弃gpickle (#4282)

  • 改进relabel覆盖范围,微调文档字符串 (#4299)

  • 切换到travis-ci.com

  • 测试:增加convert_matrix的测试覆盖率 (#4301)

  • 为Node/EdgeView切片添加描述性错误消息 (#4300)

  • 不导入他人的version.py (#4289)

  • 测试:重构以提高覆盖率。 (#4307)

  • 改进readwrite测试覆盖率 (#4310)

  • 修复拼写错误 (#4312)

  • 更新to_dict_of_dicts的文档字符串。

  • 为edge_data参数添加测试。

  • 对文档字符串进行微调

  • 添加dedensification函数 (#4240)

  • 测试:将多重图的测试覆盖率提高到100% (#4340)

  • 在画廊中添加彩虹着色示例。 (#4330)

  • 在Python 3.9上进行测试 (#4303)

  • Sphinx33 (#4342)

  • 修复所有cc例程中yield和seen.update的顺序问题(见#4331&#3859&3823) (#4333)

  • 更新reportviews的切片错误消息

  • 修复欧拉路径问题 (#4317)

  • 为简化cytoscape函数签名做准备,添加FutureWarning (#4284)

  • 将一些导入移到函数内部以提高库的导入速度 (#4296)

  • 处理代码审查中的评论。

  • 清理algebraicconnectivity (#4287)

  • 从travis切换到gh actions (#4320)

  • 修复问题 (#4345)

  • 修复travis文档部署

  • 修复travis上的gdal版本

  • 更新to_dict_of_dict的edge_data (#4321)

  • 将adjacency_iter更新为adjacency (#4339)

  • 为set_{node/edge}_attributes中的缺失节点/边测试和文档 (#4346)

  • 更新has_eulerian_path的测试和文档 (#4344)

  • 废弃nx_shp (#4298)

  • 重构和改进restricted_view和selfloop_edges的测试覆盖率 (#4351)

  • 在sphinx画廊中启用mayavi。 (#4297)

  • CI:为文档部署在travis和GH上添加mayavi配置 (#4354)

  • 修复使用GH actions构建文档

  • 在安装mayavi之前安装vtk

  • 将bidirectional_dijkstra作为加权最短路径的默认值 (#4356)

  • 为utils.misc.flatten添加单元测试 (#4359)

  • 提高coreviews.py的测试覆盖率 (#4355)

  • 更新tutorial.rst - 修复 #4249 (#4358)

  • 修复问题4336,移动try/except并添加else子句 (#4365)

  • 为triadic_census添加nodelist属性 (#4361)

  • API: 总是使用FancyArrowPatch的列表而不是LineCollection (#4360)

  • MNT: 使自环在所有情况下都可见 (#4370)

  • 将额外的库添加到intersphinx映射中 (#4372)

  • 使nx.pagerank成为不同实现的包装器,默认使用scipy的实现 (#4319)

  • MAINT: 移除已弃用的numpy类型别名。 (#4373)

  • DOC: 修复random_tournament和hamiltonian_path的返回类型 (#4376)

  • 跳过PyPy的内存泄漏测试 (#4385)

  • 添加OSMnx示例 (#4383)

  • 更新to_pandas_edgelist的文档字符串并添加edgekey参数 (#4384)

  • TST: 提高nx_pylab模块的测试覆盖率 (#4375)

  • 修复在节点收缩期间边属性被悄悄覆盖的问题 (#4273)

  • CI: 修复CircleCI文档构建失败 (#4388)

  • 提高convert模块的测试覆盖率 (#4306)

  • 添加基因-基因网络 (#4269)

  • 忽略预期警告 (#4391)

  • 使用矩阵乘法运算符 (#4390)

  • cluster.py中square_clustering算法的代码和文档修复 (#4392)

  • 移除xml导入检查 (#4393)

  • 修复NXEP模板中的拼写错误 (#4396)

  • 根据 #3849 添加Panther算法 (#3886)

  • Pagerank跟进 (#4399)

  • 不要从networkx导入nx (#4403)

  • 修改并记录draw_networkx_edges中nodelist参数的行为 (#4378)

  • 添加电路图 (#4408)

  • 添加单词图绘制 (#4409)

  • DOC: 删除重复的单词 (#4410)

  • 添加rcm示例的绘图 (#4411)

  • 修复kernighan_lin算法中的小索引迭代bug (#4398)

  • 使用str dunder (#4412)

  • 使用xetex作为uft8 latex后端 (#4326)

  • 在travis.yml中添加推荐的字体。 (#4414)

  • CI: 解决字体命名错误的问题。 (#4416)

  • DOC: 使用线条的地理空间示例 (#4407)

  • 为地理空间数据添加绘图示例 (#4366)

  • 增加graphviews.py中的覆盖率 (#4418)

  • 重构gallery (#4422)

  • 更安全地表示变量的格式 (#4413)

  • 对classic.py的文档和导入进行更新 (#4424)

  • 移除高级示例部分 (#4429)

  • 将coreview对象添加到文档中 (#4431)

  • 为绘制自环添加gallery示例。 (#4430)

  • 添加igraph示例 (#4404)

  • 标准导入 (#4401)

  • 收集graphviz示例 (#4427)

  • NXEP 3: 允许生成器从edgelist中产生 (#4395)

  • 更新地理空间readme (#4417)

  • DOC: 修复shortest_path文档字符串中的破损链接 (#4434)

  • 改进bfs_predecessors和bfs_successors的描述。 (#4438)

  • 废弃jit (#4428)

  • JavaScript示例: 修复链接 (#4450)

  • 废弃utils.misc.consume (#4449)

  • DOC: 从napoleon切换到numpydoc sphinx扩展 (#4447)

  • 修正networkxsimplex文档字符串关于multigraph的描述

  • 使用“create_using”参数的二项树(binomial_tree) (#4461)

  • 重新组织测试 (Reorganize tests) (#4467)

  • 根据NEP 29放弃对Py3.6的支持 (Drop Py3.6 support per NEP 29) (#4469)

  • 添加random_ordered_tree和forest_str (Add random_ordered_tree and forest_str) (#4294)

  • 废弃iterable (Deprecate iterable) (#4448)

  • 允许relabel_nodes映射具有非节点键,这些键将被忽略 (Allow relabel_nodes mapping to have non-node keys that get ignored) (#4466)

  • 修复文档 + 为k_components approx添加装饰器 (Fixed docs + added decorator for k_components approx) (#4474)

  • 更新聚类的文档 修复 #4348 (Update docs for clustering Fixes #4348) (#4477)

  • 处理自环以进行单个自环的绘制 (Handle self-loops for single self-loop (drawing)) (#4425)

  • 在README中更新GH actions链接 (Update GH actions links in README) (#4482)

  • 改进cuts.py的代码覆盖率 (Improve code coverage for cuts.py) (#4473)

  • 重新启用测试 (Re-enable tests) (#4488)

  • 更新Sphinx (#4494)

  • 更新pre-commit (#4495)

  • 简化示例依赖关系 (Simplify example dependencies) (#4506)

  • 更新地理空间readme (Update geospatial readme) (#4504)

  • 更新年份 (Update year) (#4509)

  • 放弃Travis CI (Drop Travis CI) (#4510)

  • 分别运行pypy测试 (Run pypy tests separately) (#4512)

  • 简化版本信息 (Simplify version information) (#4492)

  • 删除旧测试 (Delete old test) (#4513)

  • 为pygraphviz示例添加Gallery支持 (Gallery support for pygraphviz examples) (#4464)

  • TST: 一种参数化read_edgelist测试的方法 (TST: An approach to parametrizing read_edgelist tests) (#4292)

  • 通过actions设置跨存储库文档部署 (Setup cross-repo doc deploy via actions) (#4480)

  • 使用问题模板重定向到讨论选项卡,添加错误报告模板 (use issue templates to redirect to discussions tab, add a bug report template) (#4524)

  • 修复nx.edge_boundary中的性能问题 (Fix performance issue in nx.edge_boundary) (#4528)

  • 清理列表推导式 (clean up list comp) (#4499)

  • 改进swap.py的代码覆盖率 (Improve code coverage of swap.py) (#4529)

  • 有符号加权图的聚类 (Clustering for signed weighted graphs) (#4519)

  • 修复文档字符串并删除未使用的变量 (Fix docstrings and remove unused variables) (#4501)

  • 改进chordal.py的代码覆盖率 (Improving code coverage of chordal.py) (#4471)

  • 多图/有向图类型上的团 (#4502)

  • 近似直径 (Approximated Diameter) (#4476)

  • 对于有向图,“箭头”默认应为True (#4522)

  • 从gallery示例中删除不必要的node_list (Remove unnecessary node_list from gallery example) (#4505)

  • 修复函数draw_networkx中width参数的描述 (fixing the width argument description of the function draw_networkx) (#4479)

  • 部分恢复 #4378 - 修改draw_networkx_edges中nodelist参数的行为 (Partially revert #4378 - Modify behavior of nodelist param in draw_networkx_edges) (#4531)

  • 在不需要的地方内部替换generate_unique_node (Replace generate_unique_node internally where not needed) (#4537)

  • 扩展谐波中心性以包括源节点 (Extend harmonic centrality to include source nodes) (#4446)

  • 改进group betweenness centrality (improve group betweenness centrality) (#4435)

  • 修复GitHub Actions失败 (fixes GitHub Actions failures) (#4548)

  • 在weighted.py中更新cutoff的定义 (updated cutoff def in weighted.py) (#4546)

  • 对文档构建的mayavi约束放宽一些 (Less strict on mayavi constraint for doc building) (#4547)

  • 更新ancestor和descendents的文档字符串 (Update docstring for ancestor and descendents) (#4550)

  • TST: 修复katz centrality测试设置中的错误 (TST: Fix error in katz centrality test setup) (#4554)

  • 为LFR修正mu参数文档 (Correct mu parameter documentation for LFR) (#4557)

  • 固定pygeos==0.8 (Pin pygeos==0.8) (#4563)

  • 解除对pygeos的固定 (Unpin pygeos) (#4570)

  • 通过GH actions测试Windows (Test Windows via GH actions) (#4567)

  • 更新arbitrary_element的文档和测试 (Update documentation and testing of arbitrary_element) (#4451)

  • 为max_iter参数添加测试

  • 重新格式化test_kernighan_lin.py

  • 简化测试pylab (#4577)

  • 更新README.rst

  • 修复搜索 (Fix search) (#4580)

  • 添加Kernighan Lin算法测试 (Add test Kernighan Lin Algorithm) (#4575)

  • 修复拼写错误 (Fix typos) (#4581)

  • 受监护项目文档的样板 (Boiler plate for mentored projects documentation) (#4576)

  • 废弃generate_unique_node (Deprecate generate_unique_node) (#4545)

  • 检查floyd_warshall的nodelist输入 (Check nodelist input to floyd_warshall) (#4589)

  • 改进intersection函数 (Improve intersection function) (#4588)

  • Pygraphviz choco (#4583)

  • 添加显著群算法 (Add prominent group algorithm) (#4560)

  • 添加partition_quality以计算覆盖率和性能 (Add partition_quality to compute coverage and performance) (#4536)

  • 使用Pillow查看AGraph输出并弃用default_opener (#4600)

  • 移除mktemp的使用 (#4593)

  • 为新贡献者在开发者指南中添加常见问题解答 (#4556)

  • 提高非随机性的测试覆盖率和文档 (#4613)

  • 一次性收集标签传播社区 (#4573)

  • 弃用networkx.utils.empty_generator。 (#4599)

  • clique.graph_clique_number 中更早返回 (#4622)

  • 项目页面增加更多内容:TSP和图同构 (#4620)

  • 将推荐的虚拟环境目录添加到.gitignore中 (#4619)

  • 在中心性度量中添加权重描述 (#4610)

  • 在README中添加一个好的首次问题徽章 (#4627)

  • 在正则测试中添加测试 (#4624)

  • 将scipy-1.6.1添加到阻止列表中。 (#4628)

  • 弃用hub_matrix和authority_matrix (#4617)

  • 修复问题#3153:广义模块化最大化 (#3260)

  • 改进find_cycle的文档示例。 (#4639)

  • 修正并更新Atlas示例 (#4635)

  • 在docstring中的参数列表中删除attr_dict (#4642)

  • 验证is_matching()中的边是否有效 (#4638)

  • 移除旧文件引用 (#4646)

  • 弃用Ordered图类 (#4629)

  • 更新CI以使用main分支 (#4651)

  • 将main设置为默认分支(并删除gitwash) (#4649)

  • 修复Katz中心性定义的链接 (#4655)

  • 修复bellman_ford中negative_edge_cycle权重kwarg的问题 (#4658)

  • 重构二部图和多部图布局 (#4653)

  • 为导师志愿者服务 (#4671)

  • 添加前缀树的迭代版本 (#4640)

  • 增加代码覆盖率比赛 (#4665)

  • 修复to_vertex_cover (#4667)

  • 将次要子模块重新组织为子包 (#4349)

  • modularity_max:考虑边权重 (#4690)

  • 从集合中移除random.sample的实例(在Python 3.9中已弃用) (#4602)

  • 修复传递缩减中的错误,导致节点/边属性丢失 (#4684)

  • 在README中直接链接到教程和讨论 (#4711)

  • 限制装饰器依赖的上限 (#4721)

  • 修复拼写错误 (#4724)

  • 更新average_clustering()文档 - 问题#4734 (#4735)

  • 在docstring示例中删除nx导入。 (#4738)

  • CI:在circleci运行之间保留pip缓存 (#4714)

  • 使用pydata sphinx主题 (#4741)

  • 将scale_free_graph的O(n^2)实现改为O(n) (#4727)

  • TST:更明确地进行实例比较。 (#4748)

  • 修复docstring中的拼写错误(ismorphism -> isomorphism) (#4756)

  • CI:修复文档工作流程中cartopy构建失败的问题 (#4751)

  • 为utils模块添加缺失的__all__ + 测试。 (#4753)

  • 添加2篇TSP项目的文章作为参考 (#4758)

  • 提高几何图的可重现性 (#4768)

  • 更新#4718的装饰器要求 (#4773)

  • 示例画廊:使用MPL在网络上绘制自定义节点图标 (#4633)

  • 摆脱无效的转义序列。 (#4789)

  • imread(url)已弃用,使用pillow + urllib从URL加载图像 (#4790)

  • 在draw_networkx_nodes函数中添加自动边距缩放(解决问题3443) (#4769)

  • 更新文档依赖项 (#4794)

  • 修复文档构建期间的sphinx警告。 (#4795)

  • 移除mayavi和cartopy依赖项 (#4800)

  • 使绘图更加稀疏,启用igraph的绘图功能 (#4791)

  • 修复urllib导入问题 (#4793)

  • 改善文档外观 (#4801)

  • 为旅行推销员问题添加近似算法 (#4607)

  • 添加SNAP摘要算法的实现 (#4463)

  • 更新black (#4814)

  • 重构文档 (#4744)

  • 为2.6版本发布设置装饰器的上限 (#4815)

  • 使用 callable() 检查对象是否可调用 (#1) (#4678)

  • 从tree_graph和tree_data的签名中移除字典 (#4786)

  • 使nx.hits成为不同实现的包装器,默认使用scipy的实现 (#4812)

  • 重构networksimplex.py并添加test_networksimplex.py (#4685)

  • 更新要求 (#4625)

  • 修复Sphinx错误 (#4817)

  • 添加topological_generations函数 (#4757)

  • 在简单和双Barábasi-Albert随机图中添加 initial_graph 参数 (#4659)

  • 链接到指南 (#4818)

  • 切换spring_layout和fruchterman_reingold_layout的别名方向 (#4820)

  • 修复to_undirected文档中的拼写错误 (#4821)

  • 废弃preserve_random_state (#4826)

  • 修复带有nan/inf属性的read/write_gml (#4497)

  • 通过模块getattr移除pyyaml依赖 (#4802)

  • 使用pytest.approx (#4827)

  • 文档:澄清k_crust(G, k)的行为 (#4831)

  • 限制circleci中OMP使用的线程数 (#4830)

  • 废弃run (#4833)

  • 修复html文档中一些损坏的链接 (#4572)

  • 重构测试工具 (#4829)

  • 修复边绘制性能回退 (#4825)

  • 起草2.6版本发布说明 (#4828)

  • 修复错误的导入模式 (#4839)

  • 添加关于测试和示例的信息 (#4582)

  • 从communicability_betweenness_centrality中删除未使用的 normalized 参数 (#4843)

  • 在图初始化时添加对 multigraph_input 的特殊处理 (#4823)

  • 在adjacency_matrix中添加dtype参数 (#4850)

  • 使用scipy计算特征值 (#4847)

  • 默认使用NumPy计算simrank相似度 (#4841)

  • 从顶层networkx命名空间中移除”networkx” (#4840)

  • 指定2.6rc1版本发布

  • 提升发布版本号

  • 文档:在GML文档中指向网络档案链接 (#4864)

  • 修复文档字符串拼写错误 (#4871)

  • 重新格式化表格以解决问题#4852 (#4875)

  • spring_layout:忽略图中不存在的’fixed’节点 (#4867)

  • 反序列化自定义默认属性图形 (#4872)

  • 文档:修复链接,使用DOI链接,在必要时使用wayback machine (#4868)

  • 修复conda说明 (#4884)

  • 解码GraphML/yEd形状类型 (#4694)

  • 修复问题4353的bug修复:修改默认的edge_id格式 (#4842)

  • 如果将None添加为节点,则引发ValueError (#4892)

  • 在draw_networkx中更新箭头的默认值 (#4883)

  • 文档/修复403错误绘制自定义图标 (#4906)

  • 移除装饰器依赖 (#4739)

  • 更新dfs和bfs边缘的文档字符串并修复交叉链接 (#4900)

  • 修复to_undirected方法中的graph_class使用 (#4912)

  • 修复同配性系数计算 (#4851)

  • 废弃numeric_mixing_matrix (#4923)

  • 使用destringizer ex更新read_gml文档字符串 (#4916)

  • 更新发布流程 (#4866)

  • 指定2.6rc2版本发布

  • 提升发布版本号

  • 添加3.0迁移指南 (#4927)

  • 修复quotient_graph文档 (#4930)

  • 为Katz中心性参考添加页码 (#4932)

  • 在read_gml文档字符串中扩展destringizer示例 (#4925)

  • 将分区检查移出私有的_quotient_graph函数 (#4931)

  • 修复#4275 - 为并行介数示例添加注释 (#4926)

  • 对Networkx/algorithms/community/quality.py进行轻微改进 (#4939)

  • 修复数值和度相关性系数计算 (#4928)

  • 修复conftest.py文档字符串中的拼写错误 (#4945)

  • 修复两个TSP函数的init_cycle参数问题 (#4938)

  • 拆分弃用部分。删除对neighbor_degree的所有更改 (#4937)

  • 将矩阵市场添加到readwrite参考中 (#4934)

  • 修复弃用的PR编号中的拼写错误 (#4949)

  • 修复有向图的邻居度 (#4948)

  • descendants_at_distance 也适用于非有向图 (#4952)

  • 对rst文件进行更改以使doctests通过 (#4947)

  • 修复版本下拉菜单 (#4954)

  • 完成2.6版本发布说明 (#4958)

贡献者#

  • AbhayGoyal

  • Suvayu Ali

  • Alexandre Amory

  • Francesco Andreuzzi

  • Salim BELHADDAD

  • Ross Barnowski

  • Raffaele Basile

  • Jeroen Bergmans

    1. Bernstein

  • Geoff Boeing

  • Kelly Boothby

  • Jeff Bradberry

  • Erik Brendel

  • Justin Cai

  • Thomas A Caswell

  • Jonas Charfreitag

  • Berlin Cho

  • ChristopherReinartz

  • Jon Crall

  • Michael Dorner

  • Harshal Dupare

  • Andrew Eckart

  • Tomohiro Endo

  • Douglas Fenstermacher

  • Martin Fleischmann

  • Martha Frysztacki [frɨʂtat͡skʲ]

  • Debargha Ganguly

  • CUI Hao

  • Floris Hermsen

  • Ward Huang

  • Elgun Jabrayilzade

  • Han Jaeseung

  • Mohammed Kashif

  • Alex Korbonits

  • Mario Kostelac

  • Sebastiaan Lokhorst

  • Lonnen

  • Delille Louis

  • Xiaoyan Lu

  • Alex Malins

  • Oleh Marshev

  • Jordan Matelsky

  • Fabio Mazza

  • Chris McBride

  • Abdulelah S. Al Mesfer

  • Attila Mester

  • Jarrod Millman

  • Miroslav Šedivý

  • Harsh Mishra

  • S Murthy

  • Matthias Nagel

  • Attila Nagy

  • Mehdi Nemati

  • Dimitrios Papageorgiou

  • Vitaliy Pozdnyakov

  • Bharat Raghunathan

  • Randy

  • Michael Recachinas

  • Carlos González Rotger

  • Taxo Rubio

  • Dan Schult

  • Mridul Seth

  • Kunal Shah

  • Eric Sims

  • Ludovic Stephan

  • Justin Timmons

  • Andrea Tomassilli

  • Matthew Treinish

  • Milo Trujillo

  • Danylo Ulianych

  • Alex Walker

  • Stefan van der Walt

  • Anthony Wilder Wohns

  • Levi John Wolf

  • Xiangyu Xu

  • Shichu Zhu

  • alexpsimone

  • as1371

  • cpurmessur

  • dbxnr

  • wim glenn

  • goncaloasimoes

  • happy

  • jason-crowley

  • jebogaert

  • josch

  • ldelille

  • marcusjcrook

  • guy rozenberg

  • tom

  • walkeralexander