NetworkX 2.1#
发布日期: 2018年1月22日
支持 Python 2.7, 3.4, 3.5, 和 3.6。
NetworkX 是一个用于创建、操作和研究复杂网络结构、动态和功能的 Python 包。
欲了解更多信息,请访问我们的网站和我们的示例集。请将评论和问题发送至 networkx-discuss 邮件列表。
亮点#
此版本是 37 位贡献者四个月工作、75 个 pull request 的成果。亮点包括
DiGraph 边的绘图箭头得到了极大改进!并提供了示例来展示它们。
新增了 12 个以上用于图生成、操作和/或新图算法的函数。
新增大型团大小启发式函数 (#2830)
新增有根乘积函数 (#2825)
标签传播社区检测 (#2821)
最小圈基 (#2823)
新增 Mycielski 算子 (#2785)
新增 prefix_tree, dag_to_branching 和示例 (#2784)
从 #2241 新增 inverse_line_graph 生成器 (#2782)
Steiner 树和度量闭包 (#2252)
新增基于流的节点和边不相交路径 (#2063)
更新几何网络并新增模型 (#2498)
图编辑距离 (#2729)
新增查找 k-边增强的函数 (#2572)
G.name 不再由图操作符处理。它保留作为一种属性机制来访问
G.graph['name']
,但用户需要负责在复制、子图、联合以及其他图操作中更新或更改它。
改进#
许多 bug 修复、文档更改。
速度提升,特别是对于子图。
更改了使用
**kwds
的函数输入变量名,以避免名称冲突 – 特别是add_node
新增箭头和网格图谱嵌入的示例。
API 更改#
[#2498] 在
geographical_threshold_graph
中,从 NetworkX 2.1 开始,参数alpha
已弃用,并替换为可自定义的p_dist
函数参数,如果未提供p_dist
,则默认为 r^-2。要重现早期 NetworkX 版本的网络,需要定义一个自定义函数并将其作为p_dist
参数传递。例如,如果在 NetworkX 2.0 中使用参数alpha
= 2,则在 >=2.1 版本中可以将自定义函数 def custom_dist(r): r**-2 作为参数 p_dist = custom_dist 传递,以生成等效的网络。请注意此参数更改中符号从 +2 变为 -2。[#2554] 新增算法用于在有向图和无向图中查找 k-边连通分量和 k-边连通子图。为 k=1 和 k=2 的特殊情况提供了高效实现。新功能由以下函数提供:
k_edge_components()
k_edge_subgraphs()
[#2572] 新增算法用于在无向图中查找 k-边增强。为 k=1 和 k=2 的特殊情况提供了高效实现。新功能由以下函数提供:
k_edge_augmentation()
[#2812] 移除
bellman_ford
,请使用bellman_ford_predecessor_and_distance
。[#2811] 移除
to_pandas_dataframe
和from_pandas_dataframe
,请使用to_pandas_adjacency
,from_pandas_adjacency
,to_pandas_edgelist
, 或from_pandas_edgelist
。[#2766] 在 random_layout 和 spring_layout 中新增 seed 关键字参数
[#2776] 在 spring layout 中新增 threshold 选项
[#2774] max_weight_matching 返回边集合
[#2753] 新增对读取 jit_graph 的有向图支持
[#2788] 控制 draw_networkx_nodes 中的节点边界颜色
弃用#
[#2819] 弃用
connected_component_subgraphs
,biconnected_component_subgraphs
,attracting_component_subgraphs
,strongly_connected_component_subgraphs
,weakly_connected_component_subgraphs
。请改用:[G.subgraph(c) for c in *_components]
贡献者#
Jack Amadeo
Boskovits
Daniel Bradburn
David Bradway
Ariel Chinn
Jon Crall
Rodrigo Dorantes-Gilardi
Bradley Ellert
Adam Erispaha
Ioannis Filippidis
ForFer
Louis Gatin
Aric Hagberg
Harry
Huston Hedinger
Charles Tapley Hoyt
James Lamb
Sanghack Lee
MD
Cole MacLean
Marco
Jarrod Millman
Sanggyu Nam
Viraj Parimi
Dima Pasechnik
Richard Penney
Naresh Peshwe
Zachary Sailer
Dan Schult
Jordi Torrents
John Wegis
aparamon
aweltsch
gfyoung
md0000
mddddd
talhum
已合并的 PR#
更新 v2.1 发布说明 (#2839)
更新发布说明 (#2838)
更新版权 (#2837)
新增大型团大小启发式函数 (#2830)
移除对 G.name 属性的自动处理 (#2829)
新增有根乘积函数 (#2825)
标签传播社区检测 (#2821)
更改变量名以避免 kwargs 冲突 (#2824)
最小圈基 (#2823)
弃用 component_subgraphs 函数 (#2819)
临时禁用 sphinx doctests (#2818)
调整图类边缘属性赋值的文档 (#2817)
新增对读取 jit_graph 的有向图支持 (#2753)
将箭头作为一个绘图示例 (#2801)
修复 len(edges) 中自环的 bug (#2816)
MRG: 移除
to_pandas_dataframe
和from_pandas_dataframe
(#2811)修复 Pydot 测试,使其与新版本 1.2.4 一起工作 (#2815)
MRG: 移除
bellman_ford
(#2812)合并生成器模块并调整文档 (#2814)
适用于 NumPy 1.14+ 的旧版数组打印 (#2810)
修复罕见的结构上禁止的映射 bug (#2798)
Digraph 箭头以修复 #2757 (#2760)
为参数检查使用泛型 Integral 类型 (#2800)
控制 draw_networkx_nodes 中的节点边界颜色 (#2788)
在 random_layout 和 spring_layout 中新增 seed 关键字参数 (#2766)
新增 Mycielski 算子 (#2785)
新增 prefix_tree, dag_to_branching 和示例 (#2784)
从 #2241 新增 inverse_line_graph 生成器 (#2782)
新增 steiner_tree 和 metric_closure 的文档 (#2783)
Steiner 树和度量闭包 (#2252)
更正 weight 参数的 docstring (#2781)
在 .travis.yml 中将 osx_image 切换到 xcode 7.3 (#2780)
更改 sparse6 测试文件名的方式 (#2779)
新增基于流的节点和边不相交路径 (#2063)
更新几何网络并新增模型 (#2498)
[WIP] 图编辑距离 2361 (#2729)
max_weight_matching 返回边集合 (#2774)
避免关键字和属性冲突 (#2775)
在 spring layout 中新增 threshold 选项 (#2776)
修复 expected_degree_graph 生成器中的 bug (#2773)
在 quotient_graph 中新增对不完整分区的支持 (#2771)
修复 SOURCE_DATE_EPOCH 被忽略的 bug (#2735) (#2736)
使 write_graph6 内存占用更少 (#2299)
all_simple_paths 不应返回环。修复问题 #2762 (#2770)
修复 write_gml 中的拼写错误并新增测试 (#2769)
修复 bug 并为不收敛的 fiedler_vector 新增检查 (#2681)
来自 #1700 合并冲突的字典推导式 (#2768)
修复 2763: networkx 教程文档中的拼写错误 furether (#2764)
修复 #2726: 确保 add_path 添加第一个节点 (#2759)
文档中的小更正 (#2751)
子图和复制方法的加速 (#2744)
修复教程中的拼写错误 (#2746)
扩展有关强连通性的文档 (#2732)
更正何时引发 NetworkXNotImplemented (#2731)
从 _triangles_and_degree_iter 移除列表转换 (#2725)
nx_shp 修复 (#2721)
从 union 文档中移除对 create_using 的引用 (#2722)
在传递闭包算法中复制图 (#2718)
修复 dag_longest_path bug (#2703)
修复 inter_community_edges (#2713)
修复 shortest_simple_paths。问题 #2427 (#2712)
更新 migration_guide_from_1.x_to_2.0.rst (#2694)
在 requirements/README.md 中提及 doc.txt (#2699)
文档 (centrality/dispersion): 更新贡献者邮箱地址 (#2698)
通过移除箭头标签修复 bug #2503 (#2696)
新增网格图谱嵌入示例 (#2690)
修复 nx.from_pandas_adjacency() 的 create_using (#2693)
新增查找 k-边增强的函数 (#2572)
从函数
networkx.drawing.nx_pydot.to_pydot
移除 arg strict (#2672)修复解析 graphml 中节点在组里的问题 (#2644)
移除未使用导入 (#2653)
改进子图节点迭代 (#2687)
新增 Kamada-Kawai 函数到 Sphinx 文档 (#2680)
解包 dict 以在从 shapefiles 创建节点时提供 kwargs (#2678)
修复文档中的拼写错误 (#2677)