NetworkX 2.8#

发布日期:2022年4月9日

支持Python 3.8、3.9和3.10

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

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

亮点#

此版本是由18位贡献者提交的48个拉取请求经过五周多的工作的结果。这是NetworkX 3.0发布之前的最后一个版本。要预览即将发布的3.0版本,请查看我们的

迁移指南草稿

,供从2.X迁移到3.0的用户参考。

改进#

  • 对于 average_neighbor_degree 对有向图的处理进行了更正,以前该函数只计算出度邻居的度数,然后除以“in”、“out”或“in+out”邻居的数量。因此,这甚至不是一个平均值。 更正后,它变成了指定由 source = “in”、”out”或”in+out”指定的邻居群体的平均度数。 例如:

    >>> G = nx.path_graph(3, create_using=nx.DiGraph)
    >>> print(nx.average_neighbor_degree(G, source="in", target="in"))
    {0: 0.0, 1: 1.0, 2: 1.0}
    

    这以前会产生 {0: 0.0, 1: 1.0, 2: 0.0} 注意:节点0和2被处理得毫无意义。 节点0计算的值为1/0,被转换为0。 (分子查看后继节点,而分母计算前驱节点) 节点2计算的值为0/1 = 0.0(同样是后继节点在上,但前驱节点在下)

    现在节点0计算的值为0.0/0,我们将其视为0.0。节点2计算的值为1/1 = 1.0。两者在上下处理相同的邻居。

API更改#

  • [ #5394 ] 函数 min_weight_matching 不再影响参数 maxcardinality ,因为将其设置为False会导致min_weight_matching根本没有边。唯一合理的选项是True。该参数将在v3.0中被完全移除。

弃用#

  • [ #5227 ] 弃用 greedy_modularity_communities 中的 n_communities 参数名称,改用 cutoff

  • [ #5422 ] 弃用 extrema_bounding 。改用相关的距离度量,并使用 usebounds=True

  • [ #5427 ] 弃用 dict_to_numpy_array1dict_to_numpy_array2 ,改用 dict_to_numpy_array ,它可以同时处理两者。

  • [ #5428 ] 弃用 utils.misc.to_tuple

合并的拉取请求#

  • 修复文档

  • 修复发布说明

  • 提升发布版本号

  • 修复缺少的反引号(#5381)

  • 为create_py_random_state添加生成器支持(#5380)

  • modularity_max:引入enforce_n_communities参数(#5227)

  • 初稿(#5359)

  • 更新MultiDiGraph文档,包括更多实际示例(#5387)

  • 更新Multigraph文档(#5389)

  • 更新greedy_modularity_communities文档(#5390)

  • 完成NXEP 4初稿(#5391)

  • 修正文档字符串中的拼写错误(int -> float)(#5398)

  • 文档:示例代码块需要空行(#5401)

  • 为nx.bridges添加对多重图的支持(#5397)

  • 更新计算=”eccentricities”参数的极值边界方法(#5409)

  • 添加Tutte多项式(#5265)

  • 将sparse6的URL更新为使用https(#5424)

  • 废弃极值边界(#5422)

  • 将NXEP4添加到开发者toctree并修复损坏的链接(#5420)

  • 删除_inherit_doc - 默认行为自Python 3.5起(#5416)

  • 从一般代码审查中进行轻微改进(#5414)

  • 使用black忽略格式更改,使用git blame进行pep8格式化(#5405)

  • 废弃dict到numpy辅助函数(#5427)

  • 废弃 to_tuple (#5430)

  • 修复有向图的average_neighbor_degree计算(#5404)

  • 为tutte多项式测试参数化(#5431)

  • 更新black(#5438)

  • 忽略black格式化(#5440)

  • 更新sphinx(#5439)

  • 使用https链接conference.scipy.org(#5441)

  • 不要在有向图中使用graph6(#5443)(#5444)

  • 修复min_weight_matching以转换没有互逆关系的边权重(#5394)

  • 添加sympy额外依赖(#5454)

  • 优化prim用于最小生成树(#5455)

  • 为to_numpy_array方法的使用添加更多示例(#5451)

  • MAINT:Prim MST测试未将算法名称传递给所有单元测试(#5457)

  • 修复MultiDiGraph上错误的dict工厂用法(#5456)

  • 为花哨箭头颜色添加额外条件(#5407)

  • 更新依赖项(#5468)

  • 更新发布说明

  • 指定2.8rc1版本发布

  • 提升发布版本号

  • 文档:为引用添加一些指南(#5476)

  • 修复问题5212(#5471)

  • shortest_path()示例(#5491)

  • 从spiral_layout文档字符串中删除不正确的引用(#5503)

  • 改进bethe_hessian_matrix的文档字符串(#5458)

  • 在NX 2->3迁移指南中添加关于NumPy/SciPy集成的注释(#5505)

  • 在文档上运行black(#5513)

贡献者#

  • Ross Barnowski

  • Riccardo Bucco

  • Matthias Bussonnier

  • FabianBall

  • Martha Frysztacki

  • Chris Keefe

  • Lukong123

  • Peter Mawhorter

  • Lucas H. McCabe

  • Jarrod Millman

  • Sultan Orazbayev

  • Dan Schult

  • Seon82

  • Mridul Seth

  • Nikita Sharma

  • Dilara Tekinoglu

  • blokhinnv

  • yusuf-csdev