NetworkX 3.2#
发布日期:2023年10月18日
支持Python 3.9、3.10、3.11和3.12。
NetworkX是一个用于创建、操作和研究复杂网络结构、动态和功能的Python包。
欲了解更多信息,请访问我们的 网站 和我们的:ref:示例库
。
请将评论和问题发送至 networkx-discuss邮件列表 。
亮点#
为大多数算法添加了
@nx._dispatch
装饰器( #6688 )。
API更改#
从
is_semiconnected
中删除了topo_order
关键字参数,没有废弃( #6651 )。废弃了Edmonds类( #6785 )。
使具有默认假设的函数的权重成为API的一部分( #6814 )。
ENH:允许用户在get_attr方法中设置默认值( #6887 )。
将函数
join
重命名为join_trees
( #6908 )。API:添加一个装饰器来废弃位置参数( #6905 )。
在node_link模块中过期
attrs
关键字参数( #6939 )。对sort_neighbors废弃进行轻微调整( #6942 )。
从scale_free_graph中删除了废弃的
create_using
关键字参数( #6940 )。使几何边缘的位置成为API的一部分( #6816 )。
取消对literal_(de)stringizer的废弃( #6943 )。
使incidence_matrix的新dtype参数仅限关键字参数( #6954 )。
使
fast_label_propagation_communities
的权重和种子仅限关键字参数( #6955 )。API:从cd_index中的time_delta中删除默认值( #6953 )。
废弃了strongly_connected_components_recursive( #6957 )。
删除了废弃的clique辅助函数( #6941 )。
增强功能#
更新三角形的计算( #6258 )。
添加了single_source_all_shortest_paths和all_pairs_all_shortest_paths( #5959 )。
为大多数算法添加了
@nx._dispatch
装饰器( #6688 )。将基准测试移至主存储库内部( #6835 )。
ENH – 在 :function:
rescale_layout
中用numpy向量化方法替换了for循环 ( #6879 )。用于社区检测的快速标签传播算法 ( #6843 )。
添加时间序列可视化图生成器 ( #6880 )。
随机树和森林 ( #6758 )。
向默认gml解析器添加对元组节点的支持 ( #6950 )。
添加Kemeny常数 ( #6929 )。
加速 resistance_distance ( #6925 )。
允许图生成器和转换函数被调度 ( #6876 )。
添加可扩展性问题(第二次尝试) ( #4890 )。
Bug 修复#
修复了
to_agraph()
的 DOT 格式 ( #6474 )。在不弃用的情况下从
is_semiconnected
中删除了topo_order
kwarg ( #6651 )。稳定化了 approximation.connected_components 的测试 ( #6715 )。
修复了 minimum_cycle_basis 并更改为返回循环而不是集合 ( #6788 )。
重新修复了 minimum_cycle_basis 和 scipy.sparse 转换并添加了测试 ( #6789 )。
number_of_walks 可能使用加权边属性 ( #6815 )。
GML:添加了对读取多行值的支持 ( #6837 )。
避免 directed_laplacian_matrix 在某些情况下导致 nans ( #6866 )。
添加关于零权重循环的测试并修复 goldberg-radzik ( #6892 )。
修改
s_metric
的normalized
默认值,使函数不会引发异常 ( #6841 )。处理无效 prufer 序列的错误处理
from_prufer_sequence
: issue #6420 ( #6457 )。修复:在没有节点属性的情况下,percolation centrality 的更好默认行为 ( #6894 )。
修复:MultiDiGraphs 中的键在加权最短路径中丢失 ( #6963 )。
处理 Laplacian 中心性的边缘情况 ( #6938 )。
添加一个在每个级别的有向Louvain算法中忽略自环的公式 ( #6630 )。
修复了``````is_k_edge_connected``````在 k=2 的情况下的问题 ( #7024 )。
文档#
修复 laplacian_centrality 和 laplacian_matrix 中的链接 ( #6623 )。
在画廊中添加贪婪着色示例 ( #6647 )。
在贡献者指南中添加代码检查 ( #6692 )。
对 equitable_coloring 文档字符串进行小修正 ( #6673 )。
移除调查横幅 ( #6818 )。
修复:使消息可读 ( #6860 )。
为 dfs_predecessor 和 dfs_successor 的源输入添加文档 ( #6867 )。
澄清 basis 仅生成简单循环 ( #6882 )。
撤销“澄清 basis 仅生成简单循环” ( #6885 )。
更新 TSP 示例文档 ( #6794 )。
维护:将 PR 模板指向 pre-commit ( #6902 )。
修复文档构建错误/警告 ( #6907 )。
文档:杂乱的反引号和双引号改为简单反引号 ( #6917 )。
文档:在缩并中为自环多重图添加示例 ( #6901 )。
修复分派函数的 Sphinx 文档渲染 ( #6895 )。
在图形度序列上添加更多示例 ( #5634 )。
对 sort_neighbors 弃用进行小改进 ( #6942 )。
在 betweenness.py 中针对浮点权重添加警告注释 ( #5171 )。
文档:杂项拼写错误 ( #6959 )。
修复 effective_size 文档中的拼写错误 ( #6967 )。
修复 tournament.py 中的示例 ( #6964 )。
修复引用 ( #6977 )。
在 snap_aggregation 文档字符串中添加缺失参数 ( #6978 )。
更新开发者弃用待办事项列表 ( #6985 )。
添加 “networkx.plugin_info” 入口点并更新文档字符串 ( #6911 )。
文档图类型;添加链接;删除未使用的导入 ( #6992 )。
在在线文档中添加 GraphBLAS 后端 ( #6998 )。
添加 3.2rc0 发行说明 ( #6997 )。
更新变更列表的发布流程( #7005 )。
更新变更列表工作流程的贡献指南( #7004 )。
修复
modularity
函数文档字符串中\(m\)参数的定义( #6990 )。更新SA_tsp和TA_tsp的文档( #7013 )。
更新katz_centrality缺失的默认alpha值( #7015 )。
维护#
用gh action替换codecov Python CLI( #6635 )。
将pyupgrade的最低Python版本提升至3.9( #6634 )。
MAINT: 清理一些覆盖率问题( #6674 )。
删除用于验证输入的不可达代码( #6675 )。
临时修复文档CI失败问题,将sphinx版本固定在<7( #6680 )。
改进与#5092相关的测试粒度示例( #5094 )。
MAINT: 提升scipy版本并利用延迟加载( #6704 )。
根据SPEC0放弃对Python 3.8的支持( #6733 )。
更新pygraphviz( #6724 )。
根据SPEC0更新核心依赖项( #6734 )。
在Python 3.12-beta2上进行测试( #6737 )。
更新OSMnx示例( #6775 )。
对清除numpy废弃警告进行轻微修复( #6776 )。
添加label-check工作流( #6797 )。
使用dependabot( #6799 )。
将webfactory/ssh-agent从0.7.0升级到0.8.0( #6800 )。
为合并的PR附加里程碑( #6802 )。
添加preserve_all_attrs到convert_from_nx以使其简洁( #6812 )。
将scientific-python/attach-next-milestone-action从f94a5235518d4d34911c41e19d780b8e79d42238升级到bc07be829f693829263e57d5e8489f4e57d3d420( #6830 )。
放宽
betweenness_centrality
测试中的阈值( #6827 )。为{single_source,all_pairs}_all_shortest_paths, cd_index添加@nx._dispatch( #6832 )。
ci: 在每晚上传的wheel中添加分发验证检查 ( #6831 )。
MAINT: 修复到每晚发布的wheels的链接 ( #6845 )。
不测试numpy2的每晚版本 ( #6852 )。
MAINT: 替换scipy命名空间中的numpy别名 ( #6857 )。
为测试取消scipy的上限 ( #6727 )。
临时解决NEP 51 numpy标量reprs + NX doctests问题 ( #6856 )。
取消numpy每晚版本的固定 ( #6854 )。
修复:使消息可读 ( #6860 )。
撤销“将sphinx固定在<7作为文档CI失败的临时修复 (#6680)” ( #6859 )。
将
_dispatch
更改为类而不是闭包 ( #6840 )。将random_state修饰符移到
@nx._dispatch
之前 ( #6878 )。MAINT: 使GEXF和graphml写入器与numpy 2.0兼容 ( #6900 )。
将函数
join
重命名为join_trees
( #6908 )。将缺失的
join
弃用内容添加到release_dev和conftest ( #6933 )。MAINT: 将分发测试工作流作为独立的CI作业 ( #6934 )。
MAINT: 使用importlib.resources而不是文件dunder来访问文件 ( #6936 )。
DOC, MAINT: 删除文档中的重复说明 ( #6937 )。
MAINT: 对具有<3个节点的图使用random_triad时引发清晰错误 ( #6962 )。
更新numpydoc ( #6773 )。
MAINT: 更新pre-commit工具依赖 ( #6965 )。
MAINT: 清理triads中的注释掉的代码 ( #6961 )。
MAINT: Scipy每晚版本失败,带有np别名 ( #6969 )。
将actions/checkout从3升级到4 ( #6970 )。
用于测试新pydata-sphinx-theme PR ( #6982 )。
MAINT: 暂时禁用构建delaunay地理空间示例 ( #6981 )。
撤销“MAINT: 暂时禁用构建delaunay地理空间示例” ( #6984 )。
增强改变默认连接树 6947 ( #6948 )。
更新sphinx主题 ( #6930 )。
从pyproject.toml生成要求文件 ( #6987 )。
使用可信发布者 ( #6988 )。
更喜欢使用”backend”而不是”plugin” ( #6989 )。
CI:将scientific-python/upload-nightly-action固定为0.2.0 ( #6993 )。
支持Python 3.12 ( #7009 )。
从git安装nx-cugraph,而不是使用nightly wheels进行文档安装 ( #7011 )。
修复拼写错误 ( #7012 )。
其他#
更新发布流程 ( #6622 )。
在Gallery中添加最低共同祖先示例 ( #6542 )。
在bipartite centrality.py中添加示例 ( #6613 )。
从CI中移除Python 3.8 ( #6636 )。
修复eigenvector.py和katz_centrality.py中的链接 ( #6640 )。
在girvan_newman示例中使用正确的命名空间 ( #6643 )。
在bipartite_layout中保留节点顺序 ( #6644 )。
使cycle_basis()确定性 ( #6654 )。
为clique.py添加文档字符串示例 ( #6576 )。
修复空图的is_chordal输出 ( #6563 )。
允许多个图形用于
@nx._dispatch
( #6628 )。在贡献者列表中Dheeraj的名字旁边添加GitHub链接 ( #6670 )。
将is_tounament添加到主命名空间 ( #6498 )。
使用解包运算符在字典上,以防止构建中间对象 ( #6040 )。
为test_correlation.py添加测试 ( #6590 )。
改进neighbor_degree.py的测试覆盖率 ( #6589 )。
为nx_pylab.py添加文档字符串示例 ( #6616 )。
改进current_flow_closeness.py的测试覆盖率 ( #6677 )。
尝试添加circleci artifact secret ( #6679 )。
为 reaching.py 改进测试覆盖率 ( #6678 )。
为 euler.py 添加了测试 ( #6608 )。
codespell: pre-commit, config, 修复拼写错误 ( #6662 )。
为 mst.py 改进测试覆盖率 ( #6540 )。
在测试 dispatch 中将权重处理为
distance=
( #6671 )。移除调查横幅 ( #6687 )。
CircleCI: 为图像重定向器添加令牌 ( #6695 )。
MAINT: 通过 graphviews 直接向 nx 命名空间添加 subgraph_view 和 reverse_view ( #6689 )。
为 dense.py 添加了文档字符串示例 ( #6669 )。
MAINT: 添加 github action 定时任务以上传每晚的 wheels ( #6701 )。
MAINT: 修复每晚构建工作流程中的文件路径 ( #6702 )。
为最短路径添加示例脚本 ( #6534 )。
为 generic_graph_view 添加了文档字符串 ( #6697 )。
Doc: 修正下划线长度错误 ( #6708 )。
MAINT: 每周定时任务以测试每晚依赖项 ( #6705 )。
简化 dfs 中的堆栈 ( #6366 )。
优化 generic_bfs_edges 函数 ( #6359 )。
优化 _plain_bfs 函数 ( #6340 )。
添加计算环的函数 ( #6633 )。
MAINT: 阻止 CI 在分支上上传每晚构建 ( #6717 )。
astar_path 的性能改进 ( #6723 )。
跳过 scipy-1.11.0rc1,因为已知问题 ( #6726 )。
为 incidence_matrix 函数添加一个可选参数以提供… ( #6725 )。
由 jfinkels & dtekinoglu 实现的图遍历 ( #5908 )。
DOCS: 将 walks 添加到 algorithms.index ( #6736 )。
在贡献者指南中添加关于在文档字符串中使用 LaTeX 格式的说明 ( #6535 )。
修复 intersection_all 方法 ( #6744 )。
修复无权图的 Johnson 方法 ( #6760 )。
维护:在要求中忽略SciPy v1.11 ( #6769 )。
替换已弃用的numpy.alltrue方法 ( #6768 )。
排除scipy 1.11.1 ( #6772 )。
记录构建文档所需的额外导入项 ( #6766 )。
修改max_weight_matching为非递归 ( #6684 )。
重写NXEP 3 ( #6648 )。
重构edmonds算法 ( #6743 )。
nx_pylab.py的文档字符串改进 ( #6602 )。
使用pyproject.toml ( #6774 )。
包含缺失的package_data ( #6780 )。
[BUG] 修补
is_minimal_d_separator
的文档和功能 ( #6427 )。更新特征向量中心性的文档 ( #6009 )。
修复贡献页面中的拼写错误 ( #6784 )。
修复louvain中空图的零除错误 ( #6791 )。
网络文本的垂直链 ( #6759 )。
时间相关模块 ( #6682 )。
允许用户在from_numpy_array中选择不包含边属性 ( #6259 )。
修改``````bfs_edges``````并向``````generic_bfs_edges``````添加警告 ( #5925 )。
拼写错误 ( #6752 )。
为join操作添加测试用例并修复处理label_attributes的join操作 ( #6503 )。
在adjacency_graph上删除序列化残留物 ( #6041 )。
修补视图签名 ( #6267 )。
添加非图形示例的文档 ( #6946 )。
功能:算法/操作符的文档字符串示例 ( #6974 )。
贡献者#
本版本新增了70位作者(按字母顺序排列):
=510 ( @diohabara )
Adam Li ( @adam2392 )
Adam Richardson ( @AdamWRichardson )
Aditi Juneja ( @Schefflera-Arboricola )
AKSHAYA MADHURI ( @akshayamadhuri )
Alex Markham ( @Alex-Markham )
Alimi Qudirah ( @Qudirah )
Andreas Wilm ( @andreas-wilm )
Anthony Labarre ( @alabarre )
Arturo ( @ArturoSbr )
Dan Schult ( @dschult )
Davide Bonin ( @davidbonin92 )
Davide D’Ascenzo ( @Kidara )
Dhaval Kumar ( @still-n0thing )
Dheeraj Ravindranath ( @dheerajrav )
Dilara Tekinoglu ( @dtekinoglu )
Efrem Braun ( @EfremBraun )
Eirini Kafourou ( @eirinikafourou )
Eran Rivlis ( @erivlis )
Erik Welch ( @eriknw )
Evgenia Pampidi ( @evgepab )
Florine W. Dekker ( @FWDekker )
Geoff Boeing ( @gboeing )
Haoyang Li ( @thirtiseven )
Ian Thompson ( @it176131 )
Jarrod Millman ( @jarrodmillman )
Jeremy Foote ( @jdfoote )
Jim Kitchen ( @jim22k )
Jon Crall ( @Erotemic )
Jordan Matelsky ( @j6k4m8 )
Josh Soref ( @jsoref )
Juanita Gomez ( @juanis2112 )
Kelly Boothby ( @boothby )
Kian-Meng Ang ( @kianmeng )
Koen van Walstijn ( @kbvw )
Lovro Šubelj ( @lovre )
Lukong Anne ( @Lukong123 )
Matt Schwennesen ( @mjschwenne )
Matthew Feickert ( @matthewfeickert )
Matthias Bussonnier ( @Carreau )
Mohamed Rezk ( @mohamedrezk122 )
Mridul Seth ( @MridulS )
Navya Agarwal ( @navyagarwal )
Nishant Bhansali ( @nishantb06 )
Omkar Yadav ( @yadomkar )
Paul Brodersen(
@paulbrodersen
)Paula Pérez Bianchi(
@paulitapb
)Pieter Eendebak(
@eendebakpt
)Pieter Kuppens(
@pkuppens
)Purvi Chaurasia(
@PurviChaurasia
)Ross Barnowski(
@rossbar
)Salim BELHADDAD(
@salym
)Sebastiano Vigna(
@vigna
)Siri(
@sirichandana-v
)Stefan van der Walt(
@stefanv
)Sultan Orazbayev(
@SultanOrazbayev
)Vanshika Mishra(
@vanshika230
)William Zijie Zhang(
@Transurgeon
)Yaroslav Halchenko(
@yarikoptic
)Zhaoyuan Deng(
@dzy49
)
本次发布中共有41位审阅者(按字母顺序排列):
Aaron Z.(
@aaronzo
)Adam Li(
@adam2392
)Adam Richardson(
@AdamWRichardson
)Alimi Qudirah(
@Qudirah
)Andreas Wilm(
@andreas-wilm
)Anthony Labarre(
@alabarre
)Dan Schult(
@dschult
)Davide Bonin(
@davidbonin92
)Dilara Tekinoglu(
@dtekinoglu
)Efrem Braun(
@EfremBraun
)Eirini Kafourou(
@eirinikafourou
)Eran Rivlis(
@erivlis
)Erik Welch(
@eriknw
)Evgenia Pampidi(
@evgepab
)Ian Thompson(
@it176131
)James Trimble’s ONS work(
@jtrim-ons
)Jarrod Millman(
@jarrodmillman
)Jim Kitchen(
@jim22k
)Jordan Matelsky(
@j6k4m8
)Josh Soref(
@jsoref
)Kelly Boothby(
@boothby
)Lukong Anne(
@Lukong123
)Matt Schwennesen(
@mjschwenne
)Matthew Feickert(
@matthewfeickert
)Matthias Bussonnier(
@Carreau
)Mridul Seth(
@MridulS
)Navya Agarwal(
@navyagarwal
)Nishant Bhansali(
@nishantb06
)Orion Sehn(
@OrionSehn-personal
)Purvi Chaurasia(
@PurviChaurasia
)Robert(
@ImHereForTheCookies
)Ross Barnowski(
@rossbar
)Salim BELHADDAD(
@salym
)Sebastiano Vigna(
@vigna
)Sultan Orazbayev(
@SultanOrazbayev
)Vanshika Mishra(
@vanshika230
)Yaroslav Halchenko(
@yarikoptic
)
_这些列表是自动生成的,可能不完整或包含重复项。_