新闻

关于 igraph 发布和其他事项

R/igraph 0.5.1

igraph 0.5.1 发行说明

igraph 0.5.1 是一个错误修复版本,但实际上它也包含许多重要的新内容。以下是关于它们的简要摘要。请参阅下面以获取完整的更改列表。

添加了 DrL 布局生成器

这是一个由 Shawn Martin 和他的同事编写的复杂而高效的布局生成器。详见手册

给定度序列的随机图的均匀抽样

增加了一个很好的随机图生成器,它以顶点的度为条件。它可以生成无向连通图。该算法和实现由 Fabien Viger 和 Matthieu Latapy 完成。详见手册

转换

igraph 包含一些函数,用于将图转换为 graph 包中定义的 graphNEL 对象 (igraph.to.graphNELigraph.from.graphNEL) 和使用 Matrix 包的稀疏矩阵 (get.adjacencygraph.adjacency,参见 sparse 参数)。

新的图构造函数

增加了一个新函数来从邻接表创建图 (graph.adjlist),并且 graph.data.frame 有一个参数调用 vertices,这允许轻松构造具有顶点和边元数据的图。

加权最短路径算法

增加了 Dijkstra 和 Belmann-Ford 算法。详见文档

测试边互易性的函数

现在可以为每条边测试互易性。详见文档

顶点形状

R 界面现在支持在绘图时使用不同的顶点形状。详见R 文档。

R 接口中的新功能

  • 一个新的布局生成器,称为 DrL。
  • 使用给定度序列的随机连通无向图的均匀抽样。
  • 边标签绘制在边的 1/3 处,如果图有互易边,这会更好。
  • plot 中初始和实验性的顶点形状支持。
  • 新函数 graph.adjlist 从邻接列表创建 igraph 图。
  • graph R 包转换到 graphNEL 图和从 graphNEL 图转换。
  • Fastgreedy 社区检测现在可以利用边权重,这是 R 界面中缺失的功能。
  • 增加了 arrow.width 图形参数。
  • graph.data.frame 有一个新的参数 vertices
  • graph.adjacencyget.adjacency 支持稀疏矩阵,使用此功能需要 Matrix 包。
  • graph.adjacency 添加列/行名称作为 name 属性。
  • 使用 Dijkstra 或 Belmann-Ford 算法的加权最短路径。
  • 最短路径函数为无法到达的顶点返回 Inf
  • 新函数 is.mutual 用于在有向图中查找互易边。
  • 添加了反向对数加权相似性度量(又名 Adamic/Adar 相似性)。
  • preference.gameasymmetric.preference.game 已重写,现在它们是 O(|V|+|E|),而不是 O(|V|^2)。
  • 函数 get.shortest.paths 中的边权重支持,它使用 Dijkstra 算法。

R 接口中更正的错误

  • 更正了 write.pajek.bgraph 中的一个错误。
  • 更正了 graph.adjacency 中的几个错误。
  • Pajek 阅读器错误已更正,如果缺少 *Vertices,则会发生段错误。
  • 写入 GML 文件时,正确处理了方向性。(但请注意,“正确”在此处与标准冲突。)
  • 更正了在无向图上计算加权、有向 PageRank 时的错误。(无论如何,这没有意义。)
  • 在 Reingold-Tilford 布局中修复了几个错误以避免边交叉。
  • 修复了 GraphML 阅读器中的一个错误,当未指定图属性的值时。
  • 修复了小(3-4 个顶点)图的图同构例程中的一个错误。
  • 更正了随机抽样实现 (igraph_random_sample),现在它总是生成唯一的数字。这会影响 G(n,m) Erdos-Renyi 生成器,它现在总是生成简单的图。
  • 基本的 igraph 构造函数(igraph_empty_attrs,所有函数都应在内部调用它)现在检查顶点数是否有限。
  • LGL、NCOL 和 Pajek 图阅读器现在可以正确处理错误。
  • 非对称 ARPACK 求解器现在以一致的形式返回结果。
  • 快速贪婪社区检测例程现在检查图是否简单。
  • LGL 和 NCOL 解析器已更正,可以处理各种行尾编码。
  • Hub & authority 分数计算现在初始化 ARPACK 参数。
  • 修复了 Walktrap 社区检测例程中的一个错误,当应用于未连接的图时。
  • 删除了几个小的内存泄漏,以及 Spinglass 社区结构检测函数中的一个大的内存泄漏