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 包。

欲了解更多信息,请访问我们的网站和我们的示例画廊(gallery)。请将意见和问题发送到 networkx-discuss 邮件列表

亮点#

此版本是 91 位贡献者经过 11 个月的工作,提交了 363 个以上的拉取请求(pull requests)的成果。亮点包括:

  • 停止支持 Python 3.6

  • 移除了“decorator”库依赖

  • 改进的示例画廊

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

  • 图对象的 __str__ 方法更加信息丰富和简洁。

  • 改进了导入时间

  • 改进了测试覆盖率

  • 新的文档主题

  • 增加了绘制自环(self-loop)边的功能

  • 增加了旅行商问题(Traveling Salesman Problem)的近似算法

新函数

  • Panther 算法

  • 最大割启发式算法

  • equivalence_classes

  • dedensification

  • random_ordered_tree

  • forest_str

  • snap_aggregation

  • networkx.approximation.diameter

  • partition_quality

  • prominent_group

  • prefix_tree_recursive

  • topological_generations

NXEPs#

NetworkX 案 (NXEPs) 涵盖了范围大于典型拉取请求的更改,例如对基本数据结构的更改。自上一版本以来,以下提案已得到考虑:

改进#

  • [#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] simrank_similarity 现在默认使用 numpy。

  • [#4317] has_eulerian_path 中新增了 source 参数,用于查找从源开始的路径。

  • [#4356] 在带权图的 shortest_path 中使用 bidirectional_dijkstra 以提高性能。

  • [#4361] 增加了 nodelist 参数到 triadic_census 函数中。

  • [#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] 当输入图的节点集不同时,图交集(Graph intersection)现在也能正常工作。

  • [#4607] 增加了解决旅行商问题的近似算法,包括 christofidesgreedy_tspsimulated_annealing_tspthreshold_accepting_tsp

  • [#4640] prefix_tree 现在使用非递归算法。原始的递归算法仍然可以通过 prefix_tree_recursive 使用。

  • [#4659] barabasi_albert_graphdual_barabasi_albert_graph 中新增了 initial_graph 参数,用于为模型提供初始图。

  • [#4690] modularity_max 现在支持边权重。

  • [#4727] 提高了 scale_free_graph 的性能。

  • [#4739] 添加了 argmap 函数以替换 decorator 库的依赖。

  • [#4757] 增加了用于 DAG 分层的 topological_generations 函数。

  • [#4768] 提高了几何图生成器的可复现性。

  • [#4769] 向 draw_networkx_nodes 中增加了 margins 关键字,用于控制大节点尺寸图像中的节点裁剪。

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

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

API 更改#

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

  • [#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] 以前,当 copyFalse 时,relabel_nodes 会为 mapping 中不在图中的键引发 KeyError,但现在会忽略 mapping 中不在图中的任何键。

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

  • [#4536] 弃用 performancecoverage,推荐使用 partition_quality,后者可以同时计算这两个指标且更高效。

  • [#4573] label_propagation_communities 返回一个社区集(sets of nodes)的 dict_values 对象,而不是社区集的生成器。它仍然是可迭代的,因此在大多数用户代码中可能仍然可用,否则只需简单修改:例如,在函数调用周围添加 iter( ... )

  • [#4545] prefix_tree 以前返回 tree, root,但 root 现在总是 0,而不是 UUID 生成的字符串。因此,函数返回 tree

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

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

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

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

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

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

  • [#4867] 函数 spring_layout 现在忽略不在图节点中的“固定”节点。

已弃用项#

  • [#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] 弃用核心视图 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

已合并的 PRs#

  • 提升发布版本号

  • 更新发布流程

  • 更新网站文档

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

  • nx_pylab.py 中 draw_networkx_edge_labels() 的一些 docstring 修复 + 一个拼写错误 (#4182)

  • TST: 在 pandas 测试中添加 dtype (#4185)

  • quotient graphs 的分区 (#4183)

  • graphml: 在 857aa81 移除后重新添加图属性类型 'long' (#4189)

  • 通过 actions 测试 mac osx (#4201)

  • DOC: 更新 cytoscape 模块中的 docstrings (#4180)

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

  • 加速 transitivity,删除冗余调用 (#4198)

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

  • 清理旧平台 (#4202)

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

  • 使可选依赖项在 CPython 上默认为启用

  • 简化导入

  • 从 requirements 填充 setup.py requires

  • 更新依赖项

  • 移除 _CholeskySolver

  • to_numpy/scipy array 函数不应允许 nodelist 中包含非节点 (#4216)

  • 修复 json_graph.tree 中的“see also”链接 (#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 进行 linting

  • 使用 black==20.8b1 格式化

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

  • TST: 修改 astar path 测试的启发式算法。 (#4237)

  • MAINT: 弃用 numpy matrix 转换函数 (#4238)

  • 添加路线图 (#4234)

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

  • DOC: Minor reformatting of contract_nodes docstring. (#4245)

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

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

  • 添加 PR 模板 (#4258)

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

  • 更新 giant component 示例 (#4267)

  • 更新“house with colors”图库示例 (#4263)

  • 将 degree_histogram 和 degree_rank 替换为单个示例 (#4265)

  • 更新 Knuth miles 示例。 (#4251)

  • 更新“four_grids”图库示例 (#4264)

  • 提高 plot_labels_and_colors 示例中标签的清晰度 (#4266)

  • 提高图库中 chess_example 的可读性 (#4252)

  • 修复 contracted_edge for multiple edges (#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 覆盖率,调整 docstrings (#4299)

  • 切换到 travis-ci.com

  • TST: 提高 convert_matrix 的测试覆盖率 (#4301)

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

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

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

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

  • 修复拼写错误 (#4312)

  • 更新 to_dict_of_dicts 的 docstring。

  • 为 edge_data 参数添加测试。

  • docstring 的小修改

  • 增加 dedensification 函数 (#4240)

  • TST: 提高 multigraph 测试覆盖率到 100% (#4340)

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

  • 在 Python 3.9 上测试 (#4303)

  • Sphinx33 (#4342)

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

  • reportviews 切片错误消息的更新 (#4304)

  • Eulerian path 修复 (#4317)

  • 添加 FutureWarning,为简化 cytoscape 函数签名做准备。 (#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 gallery 中启用 mayavi。 (#4297)

  • CI: 为 travis 和 GH 添加 mayavi conf 以部署文档 (#4354)

  • 修复使用 GH actions 构建文档

  • 在 mayavi 之前安装 vtk

  • 在 mayavi 之前安装 vtk

  • 在 mayavi 之前安装 vtk

  • 在带权 shortest_path 中默认使用 bidirectional_dijkstra (#4356)

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

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

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

  • 修复 issue 4336 的 bug,移动 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 的 docstring 并添加 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 算法中的小索引迭代错误 (#4398)

  • 使用 str dunder (#4412)

  • 为 uft8 latex backend 使用 xetex (#4326)

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

  • CI: Workaround 字体命名错误。 (#4416)

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

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

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

  • 重构画廊 (#4422)

  • 更安全的变量 repr 格式 (#4413)

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

  • 移除 advanced example 章节 (#4429)

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

  • 添加绘制自环的画廊示例。 (#4430)

  • 添加 igraph 示例 (#4404)

  • 标准导入 (#4401)

  • 收集 graphviz 示例 (#4427)

  • NXEP 3: 允许生成器从 edgelists yield (#4395)

  • 更新 geospatial readme (#4417)

  • DOC: 修复 shortest_path docstrings 中的断链 (#4434)

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

  • 弃用 jit (#4428)

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

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

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

  • 更正 networkxsimplex docstring 关于 multigraph 的说明

  • 更正 networkxsimplex docstring 关于 multigraph 的说明 (#4455)

  • Maxcut 启发式算法 (#4138)

  • 具有“create_using”参数的 binomial_tree() (#4461)

  • 重组测试 (#4467)

  • 根据 NEP 29 停止支持 Py3.6 (#4469)

  • 添加 random_ordered_tree 和 forest_str (#4294)

  • 弃用 iterable (#4448)

  • 允许 relabel_nodes mapping 包含被忽略的非节点键 (#4466)

  • 修复文档 + 为 k_components approx 添加 decorator (#4474)

  • 更新聚类文档 修复 #4348 (#4477)

  • 处理单个自环的自环 (绘制) (#4425)

  • 更新 README 中的 GH actions 链接 (#4482)

  • 提高 cuts.py 的代码覆盖率 (#4473)

  • 重新启用测试 (#4488)

  • 更新 Sphinx (#4494)

  • 更新 pre-commit (#4495)

  • 简化示例依赖项 (#4506)

  • 更新 geospatial readme (#4504)

  • 更新年份 (#4509)

  • 停止使用 Travis CI (#4510)

  • 分开运行 pypy 测试 (#4512)

  • 简化版本信息 (#4492)

  • 删除旧测试 (#4513)

  • 支持 pygraphviz 示例的画廊 (#4464)

  • TST: 参数化 read_edgelist 测试的一种方法。 (#4292)

  • 通过 actions 设置跨仓库文档部署。 (#4480)

  • 使用 issue 模板重定向到 discussions 选项卡,添加 bug 报告模板 (#4524)

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

  • 清理 list comp (#4499)

  • 提高 swap.py 的代码覆盖率 (#4529)

  • 带符号加权图的聚类 (#4519)

  • 修复 docstrings 并移除未使用的变量 (#4501)

  • 提高 chordal.py 的代码覆盖率 (#4471)

  • multigraph/directed graph 类型的团 (#4502)

  • 近似直径 (#4476)

  • 对于有向图,arrows 应该默认为 True (#4522)

  • 移除画廊示例中不必要的 node_list (#4505)

  • 修复 draw_networkx 函数的 width 参数描述 (#4479)

  • 部分恢复 #4378 - 修改 draw_networkx_edges 中 nodelist 参数的行为。 (#4531)

  • 在不需要的地方内部替换 generate_unique_node (#4537)

  • 将 harmonic centrality 扩展到包括源节点 (#4446)

  • 改进 group betweenness centrality (#4435)

  • 修复 GitHub Actions 故障 (#4548)

  • 更新 weighted.py 中的 cutoff 定义 (#4546)

  • 对文档构建的 mayavi 约束放宽要求。 (#4547)

  • 更新 ancestor 和 descendents 的 docstring (#4550)

  • TST: 修复 katz centrality 测试设置中的错误。 (#4554)

  • 纠正 LFR 的 mu 参数文档 (#4557)

  • Pin pygeos==0.8 (#4563)

  • Unpin pygeos (#4570)

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

  • 更新 arbitrary_element 的文档和测试 (#4451)

  • 添加 max_iter 参数测试

  • 重新格式化 test_kernighan_lin.py

  • 简化测试 pylab (#4577)

  • 更新 README.rst

  • 修复搜索 (#4580)

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

  • 修复拼写错误 (#4581)

  • 指导项目文档的样板文件 (#4576)

  • 弃用 generate_unique_node (#4545)

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

  • 改进 intersection 函数 (#4588)

  • Pygraphviz choco (#4583)

  • 添加 prominent group 算法 (#4560)

  • 添加 partition_quality 计算 coverage 和 performance (coverage and perfor... (#4536)

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

  • 移除 mktemp 用法 (#4593)

  • 为新贡献者在开发者指南中添加 FAQ (#4556)

  • 提高 nonrandomness 的测试覆盖率和文档 (#4613)

  • 一次性收集 label propagation communities (#4573)

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

  • 提前从 clique.graph_clique_number 返回 (#4622)

  • 更多项目页面内容:TSP 和 Graph Isomorphism (#4620)

  • 将推荐的 venv 目录添加到 .gitignore 中 (#4619)

  • 为 centrality metrics 添加 weight 描述 (#4610)

  • 在 README 中添加一个 good first issue 徽章 (#4627)

  • 为 regular 添加测试 (#4624)

  • 将 scipy-1.6.1 添加到黑名单。 (#4628)

  • 弃用 hub_matrix 和 authority_matrix (#4617)

  • 修复 issue #3153: 广义 modularity maximization (#3260)

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

  • 更正和更新 Atlas 示例 (#4635)

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

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

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

  • 弃用 Ordered 图类 (#4629)

  • 更新 CI 使用 main (#4651)

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

  • 修复 Katz centrality 定义的链接 (#4655)

  • 修复 bellman_ford 的 negative_edge_cycle weight kwarg (#4658)

  • 重构 bipartite 和 multipartite 布局 (#4653)

  • 志愿参与指导 (#4671)

  • 添加迭代版本的 prefix tree (#4640)

  • 增加 tournament 的代码覆盖率 (#4665)

  • 修复 to_vertex_cover (#4667)

  • 将 minor 子模块重组为子包 (#4349)

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

  • 移除 Python 3.9 中已弃用的 random.sample from sets 实例 (#4602)

  • 修复 Transitive Reduction 中的 Bug,导致节点/边属性丢失 (#4684)

  • README 中直接链接到教程和 discussions (#4711)

  • 限定 decorator dep 的上限。 (#4721)

  • 修复拼写错误 (#4724)

  • 更新 average_clustering() 文档 - Issue #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: 修复 docs workflow 中的 cartopy 构建失败 (#4751)

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

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

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

  • 更新 #4718 的 decorator requirement (#4773)

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

  • 移除无效的转义序列。 (#4789)

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

  • 在 draw_networkx_nodes 函数中添加 auto-margin 缩放 (修复 issue 3443) (#4769)

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

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

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

  • 使绘图密度较低,启用 igraph 绘图 (#4791)

  • 修复 urllib 导入 (#4793)

  • 改进文档外观 (#4801)

  • 添加旅行商问题的近似算法 (#4607)

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

  • 更新 black (#4814)

  • 重组文档结构 (#4744)

  • 限定 decorator 的上限以供 2.6 版本发布。 (#4815)

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

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

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

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

  • 更新 requirements (#4625)

  • 修复 Sphinx 错误 (#4817)

  • 添加 topological_generations 函数 (#4757)

  • 向简单和对偶 Barábasi-Albert 随机图添加 initial_graph 参数 (#4659)

  • 链接到指南 (#4818)

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

  • 修复 to_undirected doc typo (#4821)

  • 弃用 preserve_random_state (#4826)

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

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

  • 使用 pytest.approx (#4827)

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

  • 限定 OMP 在 circleci 中使用的线程数。 (#4830)

  • 弃用 run (#4833)

  • 修复 html 文档中的一些断链 (#4572)

  • 重构测试工具 (#4829)

  • 修复边绘制性能下降问题 (#4825)

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

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

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

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

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

  • 添加 dtype 参数到 adjacency_matrix (#4850)

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

  • simrank_similarity 默认使用 NumPy (#4841)

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

  • 指定 2.6rc1 发布

  • 提升发布版本号

  • DOC: 在 GML 文档中指向 web archive 链接 (#4864)

  • 修复 docstring 拼写错误 (#4871)

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

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

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

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

  • 修复 conda 说明 (#4884)

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

  • bugfix-for-issue-4353: 修改默认 edge_id 格式 (#4842)

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

  • 更新 draw_networkx 中的 arrows 默认值。 (#4883)

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

  • 移除 decorator 依赖项 (#4739)

  • 更新 dfs 和 bfs edges 的 docstrings 并修复交叉链接 (#4900)

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

  • 修复 assortativity coefficient 计算 (#4851)

  • 弃用 numeric_mixing_matrix。 (#4923)

  • 更新 read_gml docstring 并添加 destringizer 示例 (#4916)

  • 更新发布流程 (#4866)

  • 指定 2.6rc2 发布

  • 提升发布版本号

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

  • quotient_graph 文档修复 (#4930)

  • Katz centrality 参考文献页码 (#4932)

  • 扩展 read_gml docstring 中的 destringizer 示例 (#4925)

  • 将 partition 检查移到私有 _quotient_graph 函数之外 (#4931)

  • 修复 #4275 - 为 parallel betweenness 示例添加注释 (#4926)

  • Networkx/algorithms/community/quality.py 的小改进 (#4939)

  • 修复 numeric 和 degree assortativity coefficient 计算 (#4928)

  • 修复 conftest.py docstring 中的拼写错误 (#4945)

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

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

  • 将 matrix market 添加到 readwrite 参考 (#4934)

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

  • 修复有向图的 neighbor degree (#4948)

  • descendants_at_distance 也适用于非 DiGraphs (#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