版本1.6注释和API更改

此页反映了从networkx-1.5到networkx-1.6的API更改。

请将评论和问题发送到networkx讨论邮件列表:http://groups.google.com/group/networkx-discussion

图类

图类(图、有向图、多图、多图)中的degree*方法现在采用一个可选的weight=关键字,该关键字允许使用任意(数字)边属性计算加权度。设置weight=none等同于前一个weight=false。

加权图算法

许多“加权”图算法现在采用可选参数来指定权重应使用哪个边缘属性(默认值为“权重”)(ticket https://networkx.lanl.gov/trac/ticket/573

在某些情况下,参数名从加权改为加权。以下是如何指定算法中将使用的边缘属性:

  • 使用weight=none平均考虑所有权重(未加权的情况)
  • 使用weight='weight'使用“weight”边缘属性
  • 使用weight='other'使用“other”边缘属性

受影响的算法有:

对稀疏矩阵、聚类、平均聚类、二分度、谱布局、邻域度、同构性、中间中心性、中间中心性、生命力、负载中心性、最小成本、最短路径、最短路径长度、平均最短路径长度

同形物

现在,通过“node-match”和“edge-match”参数,可以更容易地将节点和边缘属性合并到同构检查中。作为此更改的一部分,删除了以下类:

WeightedGraphMatcher
WeightedDiGraphMatcher
WeightedMultiGraphMatcher
WeightedMultiDiGraphMatcher

“is ou isomorphic”的函数签名现在简单为:

is_isomorphic(g1, g2, node_match=None, edge_match=None)

有关详细信息,请参阅其docstring。为了帮助创建“节点匹配”和“边缘匹配”功能,鼓励用户使用:

categorical_node_match
categorical_edge_match
categroical_multiedge_match
numerical_node_match
numerical_edge_match
numerical_multiedge_match
generic_node_match
generic_edge_match
generic_multiedge_match

这些函数构造可传递给“is_o isorphic”的函数。最后,请注意,上述函数没有导入顶级命名空间,应该从“networkx.algorithms.isorphism”访问。在整个文档中重复的一个有用的导入语句是:

import networkx.algorithms.isomorphism as iso

其他

  • attracting_components

    返回列表列表而不是元组列表。

  • 缩合

    冷凝算法现在接受第二个参数(scc),并返回一个节点标记为整数而不是节点元组的图。

  • 度连接性

    “平均”的“入度”连接和“平均”的“出度”连接已替换为

    平均连接度(g,source='in',target='in')

    平均连接度(g,source='out',target='out')

  • 邻度

    “平均”和“平均”已被替换为

    平均相邻度(g,source='in',target='in')

    平均相邻度(g,source='out',target='out')