新闻

关于 igraph 发布和其他事项

C/igraph 0.9.9

C/igraph 0.9.9,0.9 系列的第九个 bug 修复版本已发布。

源代码可以从 GitHub 发布页面 获取。

此版本包括 bug 修复和文档改进,主要侧重于社群检测和可视化功能。请继续阅读以了解更多详情。

已更改

  • igraph_community_walktrap() 现在在内部使用双精度浮点运算,而不是单精度。
  • igraph_community_leiden() 中,nb_clusters 输出参数现在是可选的(即它可以是 NULL)。
  • igraph_read_graph_graphml() 不再尝试临时设置 C locale,因此如果当前 locale 使用逗号作为小数点,则无法正常工作。

已修复

  • 当没有请求 merges 矩阵时,igraph_community_walktrap() 将返回无效的 modularity 向量。
  • igraph_community_walktrap() 将返回一个对于非连通图来说过长的 modularity 向量。 当请求 membership 向量时,这将在某些加权图中导致失败。
  • igraph_community_walktrap() 现在检查权重向量:仅接受非负权重,并且所有顶点必须具有非零强度。
  • igraph_community_walktrap() 现在为没有边的图返回 NaN 的模块化分数。
  • igraph_community_fast_greedy() 现在为没有边的图返回 NaN 的模块化分数。
  • igraph_community_edge_betweenness() 现在为没有边的图返回带有单个 NaN 条目的模块化向量。 以前它返回一个零长度向量。
  • igraph_community_leading_eigenvector() 不再忽略来自 igraph_arpack_rssolve() 的非 ARPACK 相关错误。
  • fixed_size 为 true 且未给出 type_dist 时,igraph_preference_game() 现在可以正常工作; 早期版本存在一个错误,其中超过一半的顶点错误地最终进入了 0 组。
  • 修复了在使用 start=1igraph_hrg_fit() 中的内存泄漏。
  • igraph_write_graph_dot() 现在按原样输出 NaN 值。
  • 当存在空字符串属性时,igraph_write_graph_dot() 不再生成无效的 DOT 文件。
  • igraph_layout_fruchterman_reingold()igraph_layout_kamada_kawai() 及其 3D 版本,在最小值较大或最大值较小时,不遵守顶点坐标界限(xminxmax 等)。 现在已修复。
  • Kamada-Kawai 布局的初始坐标(igraph_layout_kamada_kawai()igraph_layout_kamada_kawai_3d())的选择更符合原始出版物,从而提高了结果的稳定性。 参见问题 #963。 与以前的版本相比,这更改了同一图形的函数输出。 要获得相同的布局,请使用 igraph_layout_circle()(在 2D 中)或 igraph_layout_sphere()(在 3D 中)初始化坐标。
  • 提高了 Kamada-Kawai 布局中的数值稳定性。
  • 更正了 igraph_layout_fruchterman_reingold() 及其 3D 版本中位移的计算问题。 这修复了在非连通图上使用该算法的“网格”变体。
  • igraph_psumtree_search() 将考虑在左侧打开并在右侧关闭的搜索区间,这与文档相反。 现在已更正为左侧关闭,右侧打开。 在某些情况下,这会导致为零搜索值返回零权重元素。 参见问题 #2080。

其他

  • 文档改进。