igraph 2.1.4.9065
新功能
- 为
local_scan()
添加了 `weights` 参数 (#1082, #1448, #1982)。
文档
记录
cohesion()
中的省略号 (#971, #1985)。
测试
- 简化测试 (@1741643+krlmlr)。
igraph 2.1.4.9064
错误修复
- 调整循环位置以适应顶点大小 (#1980)。
igraph 2.1.4.9062
新功能
暴露
align_layout()
并将其添加到layout_nicely()
以自动对齐布局与轴 (#1907, #1957, #1958)。
文档
- 更新所有贡献者信息 (#1975)。
igraph 2.1.4.9061
新功能
为
read_graph()
和write_graph()
添加了所有文件格式的文档 (#777, #1969)。
igraph 2.1.4.9059
错误修复
- 如果 `"layout"` 属性与顶点数量不匹配则失败 (#1880)。
igraph 2.1.4.9057
供应商代码
更新供应商源代码至 igraph/igraph@cb8a06487520edf3c5e8d30225cfdcbc22c209df (#1952)。
更新供应商源代码至 igraph/igraph@44c57191247e7fec2940db9bef2e6d07c2d88e7c (#1951)。
更新供应商源代码至 igraph/igraph@46f1e12c7cd12801d62e6b712130071b4ed3d151 (#1950)。
更新供应商源代码至 igraph/igraph@fbcbfb7ed47a9bd644d4c3bef3c6cac02b7a220d (#1949)。
更新供应商源代码至 igraph/igraph@ae1f405faa2c0e2dfec6c7006f06486dfd4e6146 (#1948)。
更新供应商源代码至 igraph/igraph@4e71883edad5f343d76954ce29374627820a28a0 (#1947)。
igraph 2.1.4.9056
供应商代码
更新供应商源代码至 igraph/igraph@83b1d7a2cda5e0fcc3b6d04800cc96c32c47e2b3 (#1944)。
更新供应商源代码至 igraph/igraph@8b0500e47f2777e1a2380cd3f9a717be1ea38881 (#1942)。
更新供应商源代码至 igraph/igraph@7c967b95f62ca1a58f672a2fd9bea194334dc632 (#1941)。
更新供应商源代码至 igraph/igraph@7239a13da6037e3f6b10ee19b095bca2b0a18742 (#1940)。
更新供应商源代码至 igraph/igraph@65a83a4f34261a5e453cf2e5a04a0591f50d0da6 (#1939)。
更新供应商源代码至 igraph/igraph@a3967d418293e382174b4e848921221b00dffb6e (#1938)。
更新供应商源代码至 igraph/igraph@873aa6c8d823b7cca18fca5032c0a2487fb9d082 (#1937)。
更新供应商源代码至 igraph/igraph@06074d94ffd0f8e283e079415c8e47b2eaf92cda (#1936)。
更新供应商源代码至 igraph/igraph@50cf73d2844dd2ace266b38ac09ca29b627cb7ce (#1935)。
更新供应商源代码至 igraph/igraph@e2a3b7c6e26683e9bb5f6a07d4e380861bd40f93 (#1934)。
更新供应商源代码至 igraph/igraph@12078c2b256e7cc15404ccf32c349101ececcf56 (#1933)。
更新供应商源代码至 igraph/igraph@cd62af9732e71060cc3b579fa49364bd08917175 (#1931)。
更新供应商源代码至 igraph/igraph@015d34e5b6e6876d8328bf959a7c494bdd61c756 (#1930)。
更新供应商源代码至 igraph/igraph@ea227139ceaa3d5525bf0ccb0656c93c6ca0b93c (#1929)。
更新供应商源代码至 igraph/igraph@4b18e606d56b01d0ce7aa60063e88be3500c896e (#1928)。
更新供应商源代码(标签 0.10.16)至 igraph/igraph@beebfcdcd707f50a31cf8eb3568cf09f8b7baf54 (#1927)。
更新供应商源代码至 igraph/igraph@0f4e5be81a752112e828ce6614ad692cef29f5fb (#1926)。
更新供应商源代码至 igraph/igraph@881c7d39b63b7986143db617afe65d4cf3b23e0e (#1925)。
更新供应商源代码至 igraph/igraph@075be76c92b99ca4c95ad9207bcc1af6d471c85e (#1924)。
更新供应商源代码至 igraph/igraph@06754306e700de9c6751301221744b781cdc791c (#1923)。
更新供应商源代码至 igraph/igraph@ab6faf22c37cc5169063edd134193233ebab264e (#1922)。
更新供应商源代码至 igraph/igraph@753afcc39f16942730913dcfd331c10668c18de1 (#1921)。
更新供应商源代码至 igraph/igraph@80aea5c5897c67137872c945f684ad29408a5810 (#1919)。
更新供应商源代码至 igraph/igraph@2c3cc367a24299b41cc7ae3f308781fde27950db (#1917)。
更新供应商源代码至 igraph/igraph@7180ad04d0a1a3c796eb6931a21d25f5df532c7a (#1914)。
更新供应商源代码至 igraph/igraph@8c1a72c8a38df0bd1337b5458f96555fbfce2778 (#1913)。
更新供应商源代码至 igraph/igraph@f845707d5b35e889676821ee31b30a2cf7b670ef (#1912)。
更新供应商源代码至 igraph/igraph@83f1f05905ff23f0c16e526b79ec1277f4209669 (#1911)。
igraph 2.1.4.9053
新功能
- 突破性更改:更改
graph_from_lcf()
的参数默认值和顺序 (#1858, #1872)。
突破性更改
- 突破性更改:更改
graph_from_lcf()
的参数默认值和顺序 (#1858, #1872)。
igraph 2.1.4.9049
文档
- 修复
\describe{}
元素的缩进 (#1867)。
igraph 2.1.4.9048
杂项
- 从 GitHub Actions 自动更新 (#1865)。
代码重构
- 使用
check_string()
而不是as.character()
(#1365)。
igraph 2.1.4.9046
杂项
从 GitHub Actions 自动更新 (#1861)。
将 deps 文件添加到 build-ignore。
igraph 2.1.4.9045
杂项
- 修复
devtools::load_all()
(#1857)。
igraph 2.1.4.9044
错误修复
- 为
graph_from_data_frame()
添加了因子支持 (#34, #1829)。
杂项
- 将 roxygen2 的开发版本作为构建依赖项 (#1832)。
文档
- 阐明
girth()
对于非循环图返回Inf
(@eqmooring, #1831)。
测试
- 在测试中不使用
library(Matrix)
(@MichaelChirico, #1833)。
供应商代码
更新供应商源代码至 igraph/igraph@ca0fca2d41bfd2819e49cf98cbc69044dbca9a28 (#1854)。
更新供应商源代码至 igraph/igraph@cb74a4a43c5b35ad4ec2bf2e3acbc547d23f2267 (#1853)。
更新供应商源代码至 igraph/igraph@f159656faeed3ab23313fceddc17fa60cb6f2760 (#1852)。
更新供应商源代码至 igraph/igraph@595b969fb1b5f206f474f0c6e4befa80f0f14fa3 (#1843)。
igraph 2.1.4.9043
供应商代码
更新供应商源代码至 igraph/igraph@2d6d0abc05ac3cb53872cc3ea86b847a7556198e (#1837)。
更新供应商源代码至 igraph/igraph@a899e60c8e3992f769e2159aeedf480ad46de337 (#1836)。
更新供应商源代码至 igraph/igraph@145b35107659f73d85186b6a021dfe4284cf50c7 (#1835)。
更新供应商源代码至 igraph/igraph@198fe3751b97bb130e724ca847d8aa5f9a58c4dc (#1834)。
igraph 2.1.4.9040
文档
- 添加作者链接 (#1821)。
igraph 2.1.4.9038
文档
- 更正
hits_scores()
的weights
参数描述。
igraph 2.1.4.9033
文档
- 更好地描述
all_shortest_paths()
的输出 (#1029, #1778)。
igraph 2.1.4.9028
供应商代码
更新供应商源代码至 igraph/igraph@fc6860b31887b362e8ddbb07e44e6a12e9cef82d (#1776)。
更新供应商源代码至 igraph/igraph@dcdad62cbb2e7969fb58429850487a5f0e00c812 (#1775)。
更新供应商源代码至 igraph/igraph@1636677c821f9dd453049b86e370c0dd6477640b (#1774)。
更新供应商源代码至 igraph/igraph@6d85a48755d5de8e36fa9d4e53fee891ad0428fa (#1773)。
更新供应商源代码至 igraph/igraph@fe6bdb78c4a3269b542c6af7a167b9599f08173d (#1772)。
更新供应商源代码至 igraph/igraph@e5e5374c55164557ba29beee4dbde1a61fa1c50b (igraph/igraph#2473, #1771)。
igraph 2.1.4.9027
供应商
更新供应商来源至 igraph/igraph@910770148045f66ee30bd0c519adaec0e7a7cc31 (igraph/igraph#2473, #1769)。
更新供应商来源至 igraph/igraph@10d4fc75f146f5fc8ec17d99ab808c53a3c49dae (#1768)。
更新供应商来源至 igraph/igraph@92ec35b3e427734fde7f8ebc9d978ee6fd207c68 (#1767)。
igraph 2.1.4.9025
新功能
暴露
find_cycle()
(#1471, #1571)。将
sample_bipartite()
拆分为两个函数,用于 G(n, m) a… (#630, #1692)。
测试
- rcc-smoke (null) 的快照更新 (#1738)。
igraph 2.1.4.9023
供应商
更新供应商来源至 igraph/igraph@b42d0101d7c2a6d31ac6568aa4b4398d5f619e2e (#1758)。
更新供应商来源至 igraph/igraph@627f71a5e0eac5c00f56499fb4457ff4f9ee315d (igraph/igraph#2710, #1757)。
更新供应商来源至 igraph/igraph@a7d22863ea48ec7b206ef6a03869ff7817cb8a5b (#1756)。
igraph 2.1.4.9022
例行事务
- 在 PR 模板中要求版权分配 (#1747)。
igraph 2.1.4.9021
例行事务
再次修复
Makefile-cigraph
。弃用
centr_eigen()
和centr_eigen_tmax()
的scale
参数 (#1531, #1625)。
测试
- 重命名并添加
laplacian_matrix()
的测试 (#1714)。
供应商
更新供应商来源至 igraph/igraph@662abbdfa467a6436bad650c31a8360787d75379 (#1753)。
更新供应商来源至 igraph/igraph@1a7f9b71505c8455afb836628bc133e387154118 (#1752)。
更新供应商来源至 igraph/igraph@410fc4089639fde7f2e6b42ce4588bd6af3d78de (#1751)。
更新供应商来源至 igraph/igraph@1cbe1ae2abedacb0afde1b367a788580c9810c6c (#1750)。
更新供应商来源至 igraph/igraph@5bda8315202ff0647e30da77de0d70c7f25d89bf (#1749)。
更新供应商来源至 igraph/igraph@091e2927a6acce4e89db0db37d7db8496a59f117 (#1748)。
igraph 2.1.4.9020
错误修复
更改了 graph_from_graphdb 的基础位置并添加了测试 (@schochastics, #1712, #1732)。
当对边/顶点选择器进行索引时,逻辑向量的回收现在会引发错误 (@schochastics, #848, #1731)。
新功能
-
feedback_vertex_set()
在图中找到最小反馈顶点集 (#1446, #1447, #1560)。
文档
- 欢迎 Maëlle Salmon 和 David Schoch 成为作者 (#1733)。
测试
- 将 feedback.set 测试合并到 structural.properties 中 (#1743)。
igraph 2.1.4.9019
测试
为未经测试的文件添加了测试 (@schochastics, #1728)。
合并并重构了 other.R 测试 (@schochastics, #1727)。
合并并重构了 structural.properties.R 测试 (@schochastics, #1726)。
igraph 2.1.4.9018
错误修复
- 在 arrow.mode 中使用函数而不是 (x) (@schochastics, #1722)。
文档
- 生命周期表 (#1525)。
重构
- 减少一个 tmp 用例 (#1715)。
测试
合并并重构了孤立的测试文件 (@schochastics, #1724)。
合并并重构了 iterators.R 和 operators.R 测试 (@schochastics, #1723)。
合并并重构了 topology.R 测试 (@schochastics, #1720)。
合并并重构了 embedding.R 测试 (@schochastics, #1721)。
将 foreign.R 的所有测试合并到一个测试文件中 (#1713)。
igraph 2.1.4.9017
新功能
- 通过数据框添加属性的适当支持 (@schochastics, #1373, #1669, #1716)。
igraph 2.1.4.9015
例行事务
- 运行
devtools::document()
(#1710)。
igraph 2.1.4.9014
错误修复
重复的箭头绘制 (@schochastics, #640, #1709)。
存在循环时,图中边标签属性的正确映射 (@schochastics, #157, #1706)。
NA 属性值在绘图时替换为默认值 (@schochastics, #293, #1707)。
igraph 2.1.4.9013
文档
将
#' if
的实例替换为#' @examplesIf
(#1134, #1698)。
igraph 2.1.4.9012
例行事务
- 运行 {styler} (带 {igraph.style}) (#1696)。
测试
合并并重构了 conversion.R 测试 (@schochastics, #1701)。
合并并重构了 make.R 测试 (@schochastics, #1685)。
合并并重构了 community.R 测试 (@schochastics, #1689)。
合并并重构了 indexing.R 测试 (@schochastics, #1687)。
igraph 2.1.4.9011
测试
合并并重构了 flow.R 测试 (@schochastics, #1675)。
合并并重构了 games.R 测试 (@schochastics, #1682)。
igraph 2.1.4.9008
重构
- 提高 graph.adjacency.sparse 的可读性和性能 (@schochastics, #1667)。
性能
- 更快地查询图的单个括号 (@schochastics, #1465, #1658)。
igraph 2.1.4.9005
新功能
-
get_edge_ids()
接受数据框和矩阵 (#1663)。
igraph 2.1.4.9003
错误修复
- 破坏性更改:图的子集赋值避免添加重复边并忽略循环,除非新的
loops
参数设置为TRUE
(@schochastics, #1662, #1661)。
破坏性更改
- 破坏性更改:图的子集赋值避免添加重复边并忽略循环,除非新的
loops
参数设置为TRUE
(@schochastics, #1662, #1661)。
igraph 2.1.4.9002
例行事务
根据 C 核心中接口定义的变化调整可选参数的处理方式 (#1567)。
破坏性更改:对
layout_with_kk()
和layout_with_fr()
的非功能性参数执行更严格的弃用 (#1108, #1628)。
破坏性更改
破坏性更改:对
layout_with_kk()
和layout_with_fr()
的非功能性参数执行更严格的弃用 (#1108, #1628)。
供应商
-
更新供应商来源至 igraph/igraph@5216243786a5368ab14db9649008d1caca75f5af。
重构:在 plfit 中针对 Windows 11 SDK 错误(其中 NAN 以非常量方式定义)的更简洁的解决方法。
-
更新供应商来源至 igraph/igraph@622f331dc9249b050bc6afbad2032e2c4e78de9e。
修复:移除未使用的覆盖排除。
-
更新供应商来源至 igraph/igraph@c675c805a6ed436887ec0e6f9c6e18ca6d13ecad。
例行事务:从上游更新 CodeCoverage.cmake https://github.com/bilke/cmake-modules/blob/master/CodeCoverage.cmake
-
更新供应商来源至 igraph/igraph@b25eda2dba6ccbcf5a47fe1cb77796a7f0f524d4。
修复:关于生成 Q_0 超立方体图时负移位的 UBSan 警告。
-
更新供应商来源至 igraph/igraph@e0dbe374e30adc654ad55a50d5aaf47ebc753908。
例行事务:更新 plfit 至 1.0.0。
-
更新供应商来源至 igraph/igraph@2cdc20a37fe048143ac54a3fa8288bb017402e7c。
例行事务:更新 plfit 模糊测试器:使用 libxml2 2.13.5 例行事务(依赖):将 codecov/codecov-action 从 4 提升到 5。
-
更新供应商来源至 igraph/igraph@082e2c6ba1a96d34d05a4e75a59c4f690aeca58d。
例行事务:更新更新日志 [跳过 CI]。
-
更新供应商来源至 igraph/igraph@8d242741a1cdc2686f180838d28f80cb96985c74。
例行事务:更新 plfit。
-
更新供应商来源至 igraph/igraph@6c57e8c955d3c4d81160281d018dd3fa0a4052d8。
重构:最大团中的小幅清理。
-
更新供应商来源至 igraph/igraph@d6348668ba511735110758dc4ee0423a983bf1ac。
重构:移除最大团模板代码中连续反斜杠前的多余空格。
-
更新供应商来源至 igraph/igraph@9f06e4c34d8b1d533ba331ae581844a2ea9b565f。
例行事务:给某些错误消息加上标点符号。
-
更新供应商来源至 igraph/igraph@befc831fff74e4bae39743b1f83b38e6b3af0390。
修复:纠正一些隐式整数转换。
-
更新供应商来源至 igraph/igraph@5e3c56c6a10cb954b78c7441c5460a3c6ad4f5b7。
修复:消除一些未使用的参数警告。
-
更新供应商来源至 igraph/igraph@8cdfd787c2be8886cc4eac014f3004055a8c3ca0。
重构:改进向量实现中的常量正确性。
-
更新供应商来源至 igraph/igraph@ab123f04e487bc8bc1b93b9258e577e5f05d7ce9。
例行事务:更新 plfit,解决了最新 Windows 11 SDK 中 NAN 定义为非编译时常量的错误。
-
更新供应商来源至 igraph/igraph@833672f02161051010d1b633b23be53765663372。
例行事务:将针对 CMake 3.31.0 USE_TERMINAL 错误的解决方法限制到受影响的 CMake 版本。
-
更新供应商来源至 igraph/igraph@5e734a2c1211d017088a882ed121f25956e20189。
持续集成:支持控制 plfit 的使用并改进 alpine jon。
-
更新供应商来源至 igraph/igraph@ed43183a2eeb9e604addf1dc672908b7b845cec7。
重构:最短路径实现中的一些清理。
-
更新供应商来源至 igraph/igraph@2412652489721e41617e3d9719b02923da31ab0d。
例行事务:devcontainer 更新。
-
更新供应商来源至 igraph/igraph@48ff9407b74cca8e50f1d256b039452e40662985。
例行事务:链接到有关策略 CMP0175 的相关 CMake 错误。
-
更新供应商来源至 igraph/igraph@3631b1d5a0f3b7e49463f89cbbba762b24d9383d。
重构:清理 igraph_path_length_hist()。
-
更新供应商来源至 igraph/igraph@6fd3903c84d741d4bed0284c85db277836a4af79。
重构:清理 igraph_vertex_path_from_edge_path() 并澄清它适用于任何游走,而不仅仅是路径。
-
更新供应商来源至 igraph/igraph@379ef39bb89f41ba6d0ff39a86039571796e3bde。
重构:消除 GraphML 读取器中冗余的指针变量。
-
更新供应商来源至 igraph/igraph@af14d843991f9e4f2894477a8644cfbd27a13d11。
修复:将 GraphML 解析器中的全局变量标记为静态。
-
更新供应商来源至 igraph/igraph@05979d3b2c85c12334ce5d3508dd473cdfa3c6f5。
文档:改进最大团文档。
-
更新供应商来源至 igraph/igraph@41d855d470c7e5cca40bb8a2e294656504aa2a56。
例行事务:更新更新日志。
-
更新供应商来源至 igraph/igraph@a2109c50681c0b444285cf40d09a602047141ea1。
文档:更多交叉引用。
-
更新供应商来源至 igraph/igraph@62881320e766e8df227839a67078dd22e909cd2d。
文档:修复拼写错误。
-
更新供应商来源至 igraph/igraph@3673a0a9c3b3604ab1975432f6bbeed697dc9f7c。
文档:更多交叉链接。
-
更新供应商来源至 igraph/igraph@e842e658993df7305aec9d805baf36008aec9e4d。
修复:与 CMake 3.31 的兼容性。
-
更新供应商来源至 igraph/igraph@2f0e27c9c19e8e7eb9b3b2df01ae3186f1e62470。
持续集成:为 CTest 并行化使用现代 CMake 特性。
-
更新供应商来源至 igraph/igraph@a16619502b6c21d4883eeee992794b271e1035d9。
例行事务:更新更新日志。
-
更新供应商来源(标签 0.10.15)至 igraph/igraph@635b432eff0a89580ac9bb98068d2fbc8ef374f2。
例行事务:更新更新日志。
-
更新供应商来源至 igraph/igraph@563aa5e8569b85a73680752bd8ad5624575610b6。
例行事务:运行 pre-commit 钩子。
-
更新供应商来源至 igraph/igraph@f32e621f3833556e361a3078ab9e046f6acdd9b8。
例行事务:提升共享库中的 VERSION 属性。
-
更新供应商来源至 igraph/igraph@26d3718b364167dd0528c63a35f9e5e513df6845。
重构:在简单循环查找器中不使用 vector_get()。
-
更新供应商来源至 igraph/igraph@cd7bcd9d9b9bfd9acd83dace6438507947297ce2。
重构:igraph_i_simple_cycles_circuit() 中更简洁的参数顺序。
-
更新供应商来源至 igraph/igraph@dafe829b811f9344fb1f5a8412a100b586817e3f。
重构:支持在
igraph_simple_cycles()
中指定最小循环长度。 -
更新供应商来源至 igraph/igraph@c263ce7541e904f71dbcb7e06ca0dfb08cbf2ed7。
接口:igraph_degree() 的默认 OUT 模式为 loops=True。
-
更新供应商来源至 igraph/igraph@f6ec07e8a9425f09259bd04b0fefe1ebdfe64067。
例行事务:更新贡献者列表。
-
更新供应商来源至 igraph/igraph@a6441e7a00118988aeac528910d6b9d417aec364。
例行事务:修剪接口文件中的尾随空格。
-
更新供应商来源至 igraph/igraph@042a2c5230e8008b976a5ad0f04fe2b3e00cde97。
接口:添加 igraph_get_isomorphisms_vf2_callback() 缺失的接口。
-
更新供应商来源至 igraph/igraph@797ab4fa6c9a119ff12af1f5d6080de8d1e4f142。
接口:将所有回调额外参数和一些回调函数标记为可选。
-
更新供应商来源至 igraph/igraph@518fcc4165c420b9f4958d1496a607d325d69826。
接口:为 fundamental_cycles() 和 minimum_cycle_basis() 添加默认参数值。
-
更新供应商来源至 igraph/igraph@d9c328f61e31d93681e2c0894ace18ad59a5dba2。
接口:更多缺失的 OPTIONAL 标记。
-
更新供应商来源至 igraph/igraph@3b9cb6ff078cf4e7fdb2be593811e50b97232fea。
接口:添加更多缺失的 OPTIONAL 标记。
-
更新供应商来源至 igraph/igraph@5512e864ecddc76af4a7c93b7e4ebfd7030cc404。
修复:functions.yaml 中某些权重参数被错误地标记为 OPTIONAL。
-
更新供应商来源至 igraph/igraph@4b208d877de74a730e8707e94ebad5318cf308ae。
修复:functions.yaml 中某些可选权重参数被标记为 OPTIONAL。
-
更新供应商来源至 igraph/igraph@d0616a433134dcb6ae6f3195c5a72e456f5a4809。
修复:is_bipartite 接口中的 type -> types。
-
更新供应商来源至 igraph/igraph@c3f9a823d8bc7fa210df4e1225c86226195e1f16。
修复:某些 BIPARTITE_TYPES 参数被错误地标记为可选。
-
更新供应商来源至 igraph/igraph@34f8d72f3c702aa490644244ebee98b836ac45d1。
重构:在接口中使用 OPTIONAL 而不是 =NULL。
-
更新供应商来源至 igraph/igraph@5c74801197212e9908f561139af3141410cf49d2。
功能:列出所有简单循环的功能。
-
更新供应商来源至 igraph/igraph@f5d79f2eb90c2597ea0e33c60d0e6a083efc4abc。
接口:igraph_find_cycle() 的默认 OUT 模式。
-
更新供应商来源至 igraph/igraph@992f77abdbe675c2d0dd2926536c57496b720c81。
重构:igraph_find_cycle() 的更好错误报告。
-
更新供应商来源至 igraph/igraph@207f0bb1624bb73a9d1f2f979bf2b2bfde60626f。
例行事务:公共头文件中的一些版权头清理。
-
更新供应商来源至 igraph/igraph@8eaa07489a27f55cdf8421bbbb8e34b60eacd1bf。
重构:次要可读性改进。
-
更新供应商来源至 igraph/igraph@5cd6552bf00d6a774cdd64b5fabf2c79524ccfc7。
修复:添加一些缺失的 IGRAPH_CHECK。
-
更新供应商来源至 igraph/igraph@82d35eebd8c73a9476d5e2d205a851b4ebfc8eda。
重构:匹配函数中的次要可读性清理。
-
更新供应商来源至 igraph/igraph@01db8e25a80dd8f93ccb9d7a6f39379a57fdc3ad。
修复:
igraph_bipartite_projection_size()
现在验证二分图types
向量。 -
更新供应商来源至 igraph/igraph@7284ee015d2662ca4e1ab62e3ce17ff34df24430。
例行事务:修复一些拼写错误。
-
将 vendored 源代码更新至 igraph/igraph@1d6ef7c417e38c881ef325d8c553ccf767db6b6f。
重构:igraph_decompose() 中次要的可读性清理。
-
将 vendored 源代码更新至 igraph/igraph@0878f577d45ff5fdc33e0ecacc542277a8024af9。
文档:更多文档改进。
-
将 vendored 源代码更新至 igraph/igraph@bd7b3a82bb9db038ebfcc046319947c5ea196660。
文档:多项文档改进和交叉引用。
-
将 vendored 源代码更新至 igraph/igraph@764954eda823c40341d302ac290629d96d5bd9bf。
杂项:修复错误消息中的拼写错误。
-
将 vendored 源代码更新至 igraph/igraph@6c0a4310474e9935acc557673e1a2f9ec0dd6db3。
文档:community_optimal_modularity() 确实支持有向图。
-
将 vendored 源代码更新至 igraph/igraph@59d71d001308d424782a386fea3069cf880d82a2。
杂项:对于旧版 Intel 编译器,不警告未知警告选项。
-
将 vendored 源代码更新至 igraph/igraph@7a0d4918abfd34c38eb2fdeec4460b2370cea1c9。
修复:在 igraph_motifs_randesu_estimate() 中验证样本大小。
-
将 vendored 源代码更新至 igraph/igraph@e7820cf969a8c63d6564452f73246c044ee99ba9。
杂项:修复注释中的拼写错误。
修改
- 为
bipartite_projection_size()
的types
参数提供 NULL 默认值。该参数在 R 中是可选的,但在 C 中不是。因此,C 接口定义没有提供默认值或 OPTIONAL 标记。
未分类
供应商:将 vendored 源代码更新至 igraph/igraph@ae93a3a2431bb6fd8a1feb687cac32feef63730b。
供应商:将 vendored 源代码更新至 igraph/igraph@e940ab737938dfdd4518164c866b2599af40856f。
供应商:将 vendored 源代码更新至 igraph/igraph@3ac79b81bdf835460445ca6163f25e6559ec9958。
供应商:将 vendored 源代码更新至 igraph/igraph@f7b77f9e9cb4d670886b7e15e876c5549250befa。
供应商:将 vendored 源代码更新至 igraph/igraph@a662f79d46970bbcc2888e69dce5daa3fee8906e。
供应商:将 vendored 源代码更新至 igraph/igraph@a1389c191ac42b5ed3fcaf341ff3235c9f6f19f3。
供应商:将 vendored 源代码更新至 igraph/igraph@12299c4928f9f463c06d0b46752df69a6d67c289。
igraph 2.1.3.9002
杂项
根据 C 核心中接口定义的变化调整可选参数的处理方式 (#1567)。
破坏性更改:对
layout_with_kk()
和layout_with_fr()
的非功能性参数执行更严格的弃用 (#1108, #1628)。
重大变更
破坏性更改:对
layout_with_kk()
和layout_with_fr()
的非功能性参数执行更严格的弃用 (#1108, #1628)。
igraph 2.1.3.9001
供应商
-
更新供应商来源至 igraph/igraph@5216243786a5368ab14db9649008d1caca75f5af。
重构:在 plfit 中针对 Windows 11 SDK 错误(其中 NAN 以非常量方式定义)的更简洁的解决方法。
-
更新供应商来源至 igraph/igraph@622f331dc9249b050bc6afbad2032e2c4e78de9e。
修复:移除未使用的覆盖排除。
-
更新供应商来源至 igraph/igraph@c675c805a6ed436887ec0e6f9c6e18ca6d13ecad。
例行事务:从上游更新 CodeCoverage.cmake https://github.com/bilke/cmake-modules/blob/master/CodeCoverage.cmake
-
更新供应商来源至 igraph/igraph@b25eda2dba6ccbcf5a47fe1cb77796a7f0f524d4。
修复:关于生成 Q_0 超立方体图时负移位的 UBSan 警告。
-
更新供应商来源至 igraph/igraph@e0dbe374e30adc654ad55a50d5aaf47ebc753908。
例行事务:更新 plfit 至 1.0.0。
-
更新供应商来源至 igraph/igraph@2cdc20a37fe048143ac54a3fa8288bb017402e7c。
例行事务:更新 plfit 模糊测试器:使用 libxml2 2.13.5 例行事务(依赖):将 codecov/codecov-action 从 4 提升到 5。
-
更新供应商来源至 igraph/igraph@082e2c6ba1a96d34d05a4e75a59c4f690aeca58d。
例行事务:更新更新日志 [跳过 CI]。
-
更新供应商来源至 igraph/igraph@8d242741a1cdc2686f180838d28f80cb96985c74。
例行事务:更新 plfit。
-
更新供应商来源至 igraph/igraph@6c57e8c955d3c4d81160281d018dd3fa0a4052d8。
重构:最大团中的小幅清理。
-
更新供应商来源至 igraph/igraph@d6348668ba511735110758dc4ee0423a983bf1ac。
重构:移除最大团模板代码中连续反斜杠前的多余空格。
-
更新供应商来源至 igraph/igraph@9f06e4c34d8b1d533ba331ae581844a2ea9b565f。
例行事务:给某些错误消息加上标点符号。
-
更新供应商来源至 igraph/igraph@befc831fff74e4bae39743b1f83b38e6b3af0390。
修复:纠正一些隐式整数转换。
-
更新供应商来源至 igraph/igraph@5e3c56c6a10cb954b78c7441c5460a3c6ad4f5b7。
修复:消除一些未使用的参数警告。
-
更新供应商来源至 igraph/igraph@8cdfd787c2be8886cc4eac014f3004055a8c3ca0。
重构:改进向量实现中的常量正确性。
-
更新供应商来源至 igraph/igraph@ab123f04e487bc8bc1b93b9258e577e5f05d7ce9。
例行事务:更新 plfit,解决了最新 Windows 11 SDK 中 NAN 定义为非编译时常量的错误。
-
更新供应商来源至 igraph/igraph@833672f02161051010d1b633b23be53765663372。
例行事务:将针对 CMake 3.31.0 USE_TERMINAL 错误的解决方法限制到受影响的 CMake 版本。
-
更新供应商来源至 igraph/igraph@5e734a2c1211d017088a882ed121f25956e20189。
持续集成:支持控制 plfit 的使用并改进 alpine jon。
-
更新供应商来源至 igraph/igraph@ed43183a2eeb9e604addf1dc672908b7b845cec7。
重构:最短路径实现中的一些清理。
-
更新供应商来源至 igraph/igraph@2412652489721e41617e3d9719b02923da31ab0d。
例行事务:devcontainer 更新。
-
更新供应商来源至 igraph/igraph@48ff9407b74cca8e50f1d256b039452e40662985。
例行事务:链接到有关策略 CMP0175 的相关 CMake 错误。
-
更新供应商来源至 igraph/igraph@3631b1d5a0f3b7e49463f89cbbba762b24d9383d。
重构:清理 igraph_path_length_hist()。
-
更新供应商来源至 igraph/igraph@6fd3903c84d741d4bed0284c85db277836a4af79。
重构:清理 igraph_vertex_path_from_edge_path() 并澄清它适用于任何游走,而不仅仅是路径。
-
更新供应商来源至 igraph/igraph@379ef39bb89f41ba6d0ff39a86039571796e3bde。
重构:消除 GraphML 读取器中冗余的指针变量。
-
更新供应商来源至 igraph/igraph@af14d843991f9e4f2894477a8644cfbd27a13d11。
修复:将 GraphML 解析器中的全局变量标记为静态。
-
更新供应商来源至 igraph/igraph@05979d3b2c85c12334ce5d3508dd473cdfa3c6f5。
文档:改进最大团文档。
-
更新供应商来源至 igraph/igraph@41d855d470c7e5cca40bb8a2e294656504aa2a56。
例行事务:更新更新日志。
-
更新供应商来源至 igraph/igraph@a2109c50681c0b444285cf40d09a602047141ea1。
文档:更多交叉引用。
-
更新供应商来源至 igraph/igraph@62881320e766e8df227839a67078dd22e909cd2d。
文档:修复拼写错误。
-
更新供应商来源至 igraph/igraph@3673a0a9c3b3604ab1975432f6bbeed697dc9f7c。
文档:更多交叉链接。
-
更新供应商来源至 igraph/igraph@e842e658993df7305aec9d805baf36008aec9e4d。
修复:与 CMake 3.31 的兼容性。
-
更新供应商来源至 igraph/igraph@2f0e27c9c19e8e7eb9b3b2df01ae3186f1e62470。
持续集成:为 CTest 并行化使用现代 CMake 特性。
-
更新供应商来源至 igraph/igraph@a16619502b6c21d4883eeee992794b271e1035d9。
例行事务:更新更新日志。
-
更新供应商来源(标签 0.10.15)至 igraph/igraph@635b432eff0a89580ac9bb98068d2fbc8ef374f2。
例行事务:更新更新日志。
-
更新供应商来源至 igraph/igraph@563aa5e8569b85a73680752bd8ad5624575610b6。
例行事务:运行 pre-commit 钩子。
-
更新供应商来源至 igraph/igraph@f32e621f3833556e361a3078ab9e046f6acdd9b8。
例行事务:提升共享库中的 VERSION 属性。
-
更新供应商来源至 igraph/igraph@26d3718b364167dd0528c63a35f9e5e513df6845。
重构:在简单循环查找器中不使用 vector_get()。
-
更新供应商来源至 igraph/igraph@cd7bcd9d9b9bfd9acd83dace6438507947297ce2。
重构:igraph_i_simple_cycles_circuit() 中更简洁的参数顺序。
-
更新供应商来源至 igraph/igraph@dafe829b811f9344fb1f5a8412a100b586817e3f。
重构:支持在
igraph_simple_cycles()
中指定最小循环长度。 -
更新供应商来源至 igraph/igraph@c263ce7541e904f71dbcb7e06ca0dfb08cbf2ed7。
接口:igraph_degree() 的默认 OUT 模式为 loops=True。
-
更新供应商来源至 igraph/igraph@f6ec07e8a9425f09259bd04b0fefe1ebdfe64067。
例行事务:更新贡献者列表。
-
更新供应商来源至 igraph/igraph@a6441e7a00118988aeac528910d6b9d417aec364。
例行事务:修剪接口文件中的尾随空格。
-
更新供应商来源至 igraph/igraph@042a2c5230e8008b976a5ad0f04fe2b3e00cde97。
接口:添加 igraph_get_isomorphisms_vf2_callback() 缺失的接口。
-
更新供应商来源至 igraph/igraph@797ab4fa6c9a119ff12af1f5d6080de8d1e4f142。
接口:将所有回调额外参数和一些回调函数标记为可选。
-
更新供应商来源至 igraph/igraph@518fcc4165c420b9f4958d1496a607d325d69826。
接口:为 fundamental_cycles() 和 minimum_cycle_basis() 添加默认参数值。
-
更新供应商来源至 igraph/igraph@d9c328f61e31d93681e2c0894ace18ad59a5dba2。
接口:更多缺失的 OPTIONAL 标记。
-
更新供应商来源至 igraph/igraph@3b9cb6ff078cf4e7fdb2be593811e50b97232fea。
接口:添加更多缺失的 OPTIONAL 标记。
-
更新供应商来源至 igraph/igraph@5512e864ecddc76af4a7c93b7e4ebfd7030cc404。
修复:functions.yaml 中某些权重参数被错误地标记为 OPTIONAL。
-
更新供应商来源至 igraph/igraph@4b208d877de74a730e8707e94ebad5318cf308ae。
修复:functions.yaml 中某些可选权重参数被标记为 OPTIONAL。
-
更新供应商来源至 igraph/igraph@d0616a433134dcb6ae6f3195c5a72e456f5a4809。
修复:is_bipartite 接口中的 type -> types。
-
更新供应商来源至 igraph/igraph@c3f9a823d8bc7fa210df4e1225c86226195e1f16。
修复:某些 BIPARTITE_TYPES 参数被错误地标记为可选。
-
更新供应商来源至 igraph/igraph@34f8d72f3c702aa490644244ebee98b836ac45d1。
重构:在接口中使用 OPTIONAL 而不是 =NULL。
-
更新供应商来源至 igraph/igraph@5c74801197212e9908f561139af3141410cf49d2。
功能:列出所有简单循环的功能。
-
更新供应商来源至 igraph/igraph@f5d79f2eb90c2597ea0e33c60d0e6a083efc4abc。
接口:igraph_find_cycle() 的默认 OUT 模式。
-
更新供应商来源至 igraph/igraph@992f77abdbe675c2d0dd2926536c57496b720c81。
重构:igraph_find_cycle() 的更好错误报告。
-
更新供应商来源至 igraph/igraph@207f0bb1624bb73a9d1f2f979bf2b2bfde60626f。
例行事务:公共头文件中的一些版权头清理。
-
更新供应商来源至 igraph/igraph@8eaa07489a27f55cdf8421bbbb8e34b60eacd1bf。
重构:次要可读性改进。
-
更新供应商来源至 igraph/igraph@5cd6552bf00d6a774cdd64b5fabf2c79524ccfc7。
修复:添加一些缺失的 IGRAPH_CHECK。
-
更新供应商来源至 igraph/igraph@82d35eebd8c73a9476d5e2d205a851b4ebfc8eda。
重构:匹配函数中的次要可读性清理。
-
更新供应商来源至 igraph/igraph@01db8e25a80dd8f93ccb9d7a6f39379a57fdc3ad。
修复:
igraph_bipartite_projection_size()
现在验证二分图types
向量。 -
更新供应商来源至 igraph/igraph@7284ee015d2662ca4e1ab62e3ce17ff34df24430。
例行事务:修复一些拼写错误。
-
将 vendored 源代码更新至 igraph/igraph@1d6ef7c417e38c881ef325d8c553ccf767db6b6f。
重构:igraph_decompose() 中次要的可读性清理。
-
将 vendored 源代码更新至 igraph/igraph@0878f577d45ff5fdc33e0ecacc542277a8024af9。
文档:更多文档改进。
-
将 vendored 源代码更新至 igraph/igraph@bd7b3a82bb9db038ebfcc046319947c5ea196660。
文档:多项文档改进和交叉引用。
-
将 vendored 源代码更新至 igraph/igraph@764954eda823c40341d302ac290629d96d5bd9bf。
杂项:修复错误消息中的拼写错误。
-
将 vendored 源代码更新至 igraph/igraph@6c0a4310474e9935acc557673e1a2f9ec0dd6db3。
文档:community_optimal_modularity() 确实支持有向图。
-
将 vendored 源代码更新至 igraph/igraph@59d71d001308d424782a386fea3069cf880d82a2。
杂项:对于旧版 Intel 编译器,不警告未知警告选项。
-
将 vendored 源代码更新至 igraph/igraph@7a0d4918abfd34c38eb2fdeec4460b2370cea1c9。
修复:在 igraph_motifs_randesu_estimate() 中验证样本大小。
-
将 vendored 源代码更新至 igraph/igraph@e7820cf969a8c63d6564452f73246c044ee99ba9。
杂项:修复注释中的拼写错误。
修改
- 为
bipartite_projection_size()
的types
参数提供 NULL 默认值。该参数在 R 中是可选的,但在 C 中不是。因此,C 接口定义没有提供默认值或 OPTIONAL 标记。
未分类
供应商:将 vendored 源代码更新至 igraph/igraph@ae93a3a2431bb6fd8a1feb687cac32feef63730b。
供应商:将 vendored 源代码更新至 igraph/igraph@e940ab737938dfdd4518164c866b2599af40856f。
供应商:将 vendored 源代码更新至 igraph/igraph@3ac79b81bdf835460445ca6163f25e6559ec9958。
供应商:将 vendored 源代码更新至 igraph/igraph@f7b77f9e9cb4d670886b7e15e876c5549250befa。
供应商:将 vendored 源代码更新至 igraph/igraph@a662f79d46970bbcc2888e69dce5daa3fee8906e。
供应商:将 vendored 源代码更新至 igraph/igraph@a1389c191ac42b5ed3fcaf341ff3235c9f6f19f3。
供应商:将 vendored 源代码更新至 igraph/igraph@12299c4928f9f463c06d0b46752df69a6d67c289。
igraph 2.1.3
CRAN 发布:2025-01-07
杂项
- 将
graph.isomorphic()
替换为isomorphic()
(#1583, #1623)。
文档
从
graph_from_graphdb()
手册页中移除损坏的示例 (#1622, #1637)。在
read_graph()
中为 NCOL 格式的参数添加文档 (#1621)。使
disjoint_union()
的文档与行为保持一致 (#1587, #1641)。添加关于实验性功能的中心说明 (#1624)。
igraph 2.1.2
CRAN 发布:2024-12-07
错误修复
如果
"return.vs.es"
选项为FALSE
,adjacent_vertices()
和incident_edges()
现在正确运行 (@stibu81, #1605, #1606)。修复 rchk 报告的保护错误 (#1592)。
修复
sample_motifs()
中sample
参数的错误处理,并确保默认的sample.size
为整数 (#1568)。
文档
澄清每种社区检测函数支持的图类型。
改进
?read_graph
和?write_graph
文档。改进
all_simple_paths()
文档。cluster_optimal()
确实支持有向图。
igraph 2.1.1
CRAN 发布:2024-10-19
完整的更新日志,特别是“重大变更”部分,请参见 https://github.com/igraph/rigraph/blob/9828d7b11be330f994f07ae93a071b356eced903/src/vendor/cigraph/CHANGELOG.md。
功能
- 为
fit_power_law()
添加p.value
和p.precision
参数以控制 p 值的计算 (#1546)。
错误修复
- 感谢 @jhollway,保留了
as.undirected()
签名,这是 igraph 2.1.0 中引入的回归问题 (#1536)。
igraph 2.1.0
完整的更新日志,特别是“重大变更”部分,请参见 https://github.com/igraph/rigraph/blob/05973441b83decdeab8cc9c500a642c00b924770/src/vendor/cigraph/CHANGELOG.md。
生命周期
重大变更
- 重大变更:从 {igraph} 本身移除 tkigraph (#1474)。
- 重大变更:硬弃用已弃用 10 年的
get.edge()
和layout.grid.3d()
(#1398)。 - 重大变更:在
igraph.match.arg()
中使用rlang::arg_match()
(#1165)。
正在进行中的弃用
我们正在努力实现更一致的接口,特别是在函数命名方面:最终我们希望 igraph 函数使用 snake_case。请尽快更新您的脚本和代码库。
- 添加
independence_number()
作为ivs_size()
的别名 (#1522)。 - 添加
get_edge_ids()
作为get.edge.ids()
的别名 (#1510)。 - 将
hub.score()
和authority.score()
的弃用信号提高到警告级别,两者均被hits_scores()
替换 (#1352)。 - 软弃用
erdos.renyi.game()
和random.graph.game()
(#1509)。
功能
C 库
- 将 vendored C/igraph 源代码更新至 igraph/igraph@d2e0f4eb567dfc505227c346a015bef574c4ccd1。
新功能
- 支持
fit_power_law(implementation = "plfit.p")
以计算 P 值 (#1386)。 - 添加
max_degree()
(#1403)。 - 添加实验性的
sample_chung_lu()
(#1416)。 - 重命名
sample_degseq()
可用的方法,并添加"edge.switching.simple"
方法 (#1376)。 eccentricity()
和radius()
支持权重 (#1211)。- 为
add_shape()
添加一些参数检查 (#1478)。
更具信息量的错误
- 导出
.from()
等,行为类似于dplyr::across()
(#1436):像.from()
这样的函数旨在用于[
内部,但现在如果用户误用它们,错误信息将更具信息量。
错误修复
- 修复在密集邻接矩阵中包含对角元素的问题 (#1437)。
- 将
graph.lattice()
的主体与其替代品make_lattice()
对齐 (#1439)。 - 将
deprecated()
用作make_lattice()
的circular
参数的默认值 (#1431)。 -
subgraph_centrality()
现在忽略边方向 (#1414)。 - 移除使用
disjoint_union()
时意外的类型转换 (#1375)。 - 添加缺少的
PROTECT()
(#1382)。 - 修复 LGL 和 NCOL 文件的读取(在 2.0.0 中损坏)(#1347)。
- 修复
R_igraph_community_to_membership2()
中潜在的内存泄漏 (#1367)。
文档
- 改进
sample_()
的手册页 (#1477)。 - 改进
make_()
手册页的交叉链接 (#1476)。 - 根据 C 文档更新
is_separator()
文档 (#1467)。 - 为引用添加 DOI (#1450)。
- 改进
laplacian_matrix()
归一化方法的文档 (#1420)。 - 修复
?plot.common
中的拼写错误 (@gvegayon) (#1413)。 - 修复
sample_degseq()
示例 (#1297)。 - 修复
graph_from_adjacency_matrix()
示例以避免警告 (#1302)。 - 将
\dontrun{}
替换为@examplesIf
(#1307)。 - 改进
sample_gnp()
示例。 - 改进中心化文档。
- 进一步澄清
betweenness()
(#1489)。 - 澄清带截止值的介数如何归一化。
- 修复
centr_eigen_tmax()
文档。 - 使
edge_density()
示例更具相关性。 - 改进
eigen_centrality()
文档。 - 改进
cluster_edge_betweenness()
文档。 -
sample_forestfire()
测试和示例 (#1318)。
面向开发者的文档
- 添加略作修改的样板
CONTRIBUTING.md
(#1423)。 - 更新故障排除文档。
- 将 {devtag} 用于内部函数文档 (#1507)。
- 使
.igraph.progress()
和.igraph.status()
更偏向内部使用 (#1516)。
igraph 2.0.3
CRAN 发布:2024-03-13
有关捆绑的 C 核心的完整更新日志,请参见 https://github.com/igraph/rigraph/blob/3299d31/src/vendor/cigraph/CHANGELOG.md,有关自 igraph 2.0.1 以来发生的变化,请参见 https://github.com/igraph/rigraph/compare/f3fa58b..3299d31#diff-aeb78e0159780a9b26daabaf6f95f450b0cfec7161fc735f27ad69145a57dc84。(R 包中使用的 C 核心最新更新日志的永久链接是 https://github.com/igraph/rigraph/blob/main/src/vendor/cigraph/CHANGELOG.md。)
功能
- GMP 不再是依赖项 (#1256),libxml2 (#1282) 和 glpk 是可选的。
- 将 vendored 源代码更新至 igraph/igraph@857a125069c226f266562b3781b82833fe1d59d9。
- 新增
voronoi_cells()
以计算图的 Voronoi 分区 (#1173)。
错误修复
- 修复
rglplot(edge_label = )
(#1267)。
持续集成
- 使用 sanitizer 运行示例 (#1288)。
- 添加计划构建。
文档
- 示例中
x11()
的使用仅在交互式会话中发生 (#1301)。 - 移除关于警告的误导性注释,因为没有给出警告 (#1294)。
- 改进
min_st_separators()
文档 (#1264)。 - 添加讨论论坛链接 (#1279) 和徽标 (#1280)。
- 添加查找重复
@seealso
的代码,并使用它 (#1270)。 - 从
?sample_pa
中移除重复的@seealso
(#1268)。 - 移除关于
is_separator()
和is_min_separator()
处理完整图的错误声明 (#1263)。 - 修复错误消息中提到
upgrade_graph()
而不是不存在的upgrade_version()
的问题 (#1252)。 - 将
is_bipartite()
手册页从其他手册页中分离出来 (#1230)。 - 改进错误报告模板。
-
CITATION.cff
仅包含前三个版本组件。 - 安装锁定工作流以在一年后锁定陈旧的讨论 (#1304)。
内部
- 将弃用的
barabasi.game()
替换为sample_pa()
(#1291)。 - 自动生成
are_adjacent()
,避免使用已弃用的igraph_are_connected()
C 函数 (#1254)。
igraph 2.0.2
CRAN 发布:2024-02-17
有关捆绑的 C 核心的完整更新日志,请参见 https://github.com/igraph/rigraph/blob/f3fa58b/src/vendor/cigraph/CHANGELOG.md,有关自 igraph 2.0.1 以来发生的变化,请参见 https://github.com/igraph/rigraph/compare/1bd2bf79..f3fa58b#diff-aeb78e0159780a9b26daabaf6f95f450b0cfec7161fc735f27ad69145a57dc84。(R 包中使用的 C 核心最新更新日志的永久链接是 https://github.com/igraph/rigraph/blob/main/src/vendor/cigraph/CHANGELOG.md。)
错误修复
-
g + vertices(1, 2, foo = 3)
再次工作,这是 igraph 2.0.0 中引入的回归问题 (#1247)。 -
sample_pa()
再次尊重out.seq
和out.dist
参数,这是 igraph 2.0.0 中引入的回归问题 (#1226)。 -
isomorphisms()
和subgraph_isomorphisims(method = "vf2")
再次工作,这是 2.0.0 中引入的回归问题 (#1219)。 -
biconnected_components()
现在再次返回边和顶点序列,这是 2.0.0 中引入的回归问题 (#1213)。 - 从
dfs()
返回的order
和order.out
组件中移除零填充,这是 2.0.0 中引入的回归问题 (#1179)。 - 将数据转换为 C 时发生内存泄漏 (#1196)。
功能
-
realize_bipartite_degseq()
从两个度序列创建二分图 (#1212)。 -
is_biconnected()
检查图是否是双连通的 (#1204)。 -
distances()
现在支持 Floyd-Warshall 算法 (#1186)。
文档
- 在介绍性 vignette 中使用更具文化多样性的名称 (#1246)。
- 介绍性 vignette 中的格式调整 (#1243)。
- 推荐 {pak} 而不是 {remotes} (#1228)。
- 修复
mean_distance()
文档中的拼写错误。 - 更新故障排除文档,强调 Anaconda 环境问题 (#1209)。
- 改进最短路径函数文档 (#1201)。
- 记录
greedy_vertex_coloring()
的"dsatur"
启发式算法 (#1206)。 - 移除与 scg 相关的文档 (#1167)。
- 修复
?articulation_points
中的拼写错误 (#1191)。 - 改进安装和故障排除说明 (#1184)。
- 改进同配性文档 (#1151)。
测试
- 为
isomorphisms()
和subgraph_isomorphisms()
添加测试 (#1225)。
打包
- 始终使用捆绑的 mini-gmp (#1233)。
-
config.h
定义了HAVE___UINT128_T
(#1216)。 - 配置期间不依赖
which
程序 (#1232)。 -
configure
管理 libxml 多个包含路径 (#1197)。 - 从
configure
中移除空字符串 (#1235)。 - 在 Windows 上根据 arpack 的需要链接 Fortran 运行时 (#1215)。
- 解决旧 GCC 不支持已弃用枚举值的问题 (#1205)。
-
win
和ucrt
的HAVE_GFORTRAN
标志 (#1171)。 -
make_empty_graph()
现在完全自动生成 (#1068)。 - 消除自动生成文件中的手动编辑 (#1207)。
- 为 RStudio IDE 添加只读注释 (#1152)。
igraph 2.0.0
此主要版本使开发与 https://github.com/igraph/igraph 上的 C 核心保持一致。完整的更新日志,特别是“重大变更”部分,请参见 https://github.com/igraph/rigraph/blob/1bd2bf79/src/vendor/cigraph/CHANGELOG.md。(R 包中使用的 C 核心最新更新日志的永久链接是 https://github.com/igraph/rigraph/blob/main/src/vendor/cigraph/CHANGELOG.md。)
R 包的 1.6.0 版本使用了 C 核心的 0.9.9 版本。C 核心 0.10 系列的更改与 R 包的 2.0.0 版本相关,但并非所有 C 核心函数都暴露在 R 接口中。C 核心中某些函数的实现更改可能会反映在 R 包的函数中。
以下更改日志是 R 接口中额外更改的摘要。
重大变更
不再支持
get.edge.ids(multi = TRUE)
和as_adjacency_matrix(edges = )
(#1101, #1080)。移除
dfs(unreachable = FALSE)$order
和$order.out
以及bfs(unreachable = FALSE)$order
的NA
填充,也适用于igraph_options(return.vs.es = FALSE)
(#1062, #1124)。laplacian_matrix(normalized = TRUE)
使用不同的归一化方法 (#1102)。fit_power_law()
不再返回KS.p
组件。移除
centr_degree_tmax()
的loops
参数的默认值 (#1114)。as_adjacency_matrix()
不再支持character
类型的属性 (#1072)。移除
graph.isomorphic.34()
(#1065, #1067)。对大多数已弃用函数使用
lifecycle::deprecate_soft()
(#1024, #1025, #1104)。系统库 GLPK、GMP 和 libxml2 现在是从源代码编译的强制要求。
功能
使用 R RNG 的 30 位 (#1079)。
重大变更:移除
dfs(unreachable = FALSE)$order
和$order.out
以及bfs(unreachable = FALSE)$order
的NA
填充,也适用于igraph_options(return.vs.es = FALSE)
(#1062, #1124)。新增
k_shortest_paths()
以计算两个顶点之间的前 k 条最短路径 (#1028)。
文档
添加 GitHub 错误报告表单。
新增
vignette("deprecated-dot-case")
,列出已弃用函数及其替代品 (#1013)。将弃用徽章移至文档页面顶部。
从介绍性 vignette 中移除
get.adjacency()
的使用 (#1084)。修复
fit_power_law()
文档中的数学格式问题。修复
subgraph.edges()
示例中的不正确用法。澄清 Infomap 考虑边方向。
改进边连接性文档 (#1119)。
添加一些缺失的变音符号。
内部
使用
[]
赋值进行矩阵转换 (#1035)。转向自动生成所有绑定 (#1043)。
使用 rlang 的 %||% (#1112)。
不重复原型,为
rinterface.c
和rinterface_extra.c
使用通用头文件 (#1055)。在
cluster_label_prop()
中为模式枚举使用整数。标准化一些 stimulus 枚举类型的处理 (#1064)。
移除未使用的 vectorlist / matrixlist 析构函数 (#1070)。
移除未使用的 stimulus 类型 VERTEXSETLIST_INT (#1049)。
移除未使用的类型 (#1060)。
修复 Stimulus 定义 (#997)。
避免使用已弃用的
R_igraph_automorphisms()
(#999)。使用 C 核心的新 ARPACK_DEFAULTS 符号作为默认 arpack 选项。
忽略上游的 CITATION 文件以避免 R CMD check 提示 (#1007)。
添加 Aviator 配置。
测试
为命名向量添加
as_biadjacency_matrix()
测试 (#1154, #1155)。测试同构函数中的颜色传递 (#1050)。
igraph 1.6.0
CRAN 发布日期:2023-12-11
破坏性变更
新增
arpack_defaults()
替代了igraph.arpack.default
和arpack_defaults
列表 (#800),并提供一致的用法检查 (#966)。定义
ape::as.phylo()
的方法,而非使用自己的as_phylo()
泛型,并移除已弃用的asPhylo()
(#763)。bfs()
对于不可达节点,`rank` 返回零而不是NaN
(#956),`dist` 返回负值而不是NaN
(#926)。random_walk()
多增加了一步,生成的顶点列表长度为steps + 1
(#934)。移除1.3版本中已弃用的一些行为/参数 (#842)。
移除
scg_eps()
,scg_group()
和scg_semi_proj()
,这些函数已损坏且不再维护 (#946)。
错误修复
修复
printf()
警告 (#975)。修复对带有类的矩阵对象调用
isSymmetric()
的问题 (#965)。减少中断检查的频率 (#957)。
新特性
将“关联矩阵”命名更改为“双邻接矩阵” (#962)。
为所有ego函数添加使用邻域术语的别名: (#950)。
将
assortativity(values, values.in)
的参数从types1
和types2
重命名 (#952)。为
cluster_label_prop()
添加省略号 (#954)。is_acyclic()
和is_forest()
的占位符,将在igraph 2.0.0中实现 (#945)。is_tree(details = TRUE)
将第一个顶点指定为非树的根 (#935)。all_shortest_paths()
在res
和vpaths
组件中都返回顶点列表 (#930)。改进输入邻接矩阵的对称性检查 (#911)。
如果是非对称无向邻接矩阵则发出警告 (#904)。
文档
移除重复的
\seealso{}
(#948)。更新
knnk()
和sir()
的文档。修复
reciprocity()
文档中的公式。strength()
在未提供权重时不会发出警告。更新
sample_smallworld()
手册页 (#895)。更正加权团的文档。
更新Erdos-Renyi模型文档。
测试
清理测试 (#967)。
稳定
cluster_label_prop()
(#932)、sample_pa()
(#927)、cluster_louvain()
(#933)、SIR (#936)、sample_forestfire()
(#929) 的测试。硬编码测试中使用的图 (#928)。
更新 GML 测试文件 (#925)。
改进从 Dirichlet 分布采样的测试 (#923)。
移除在 igraph 0.10 中不再适用的测试 (#922)。
稳定测试以准备升级 (#920)。
稳定绘图测试 (#919)。
修复检查。
igraph 1.5.1
CRAN 发布日期:2023-08-10
错误修复
-
identical_graphs()
现在可以正确检测没有节点或边属性的相同图 (#757)。
内部
更改属性对象的所有权规则 (#870)。
R_SEXP_to_igraph()
和R_SEXP_to_igraph_copy()
从外部指针获取igraph_t
对象 (#865)。从 Fortran 代码中移除
ETIME()
调用,该版本已在 CRAN 版本 1.5.0.1 中 (#858)。确保始终定义
_GNU_SOURCE
(#877)。修复
make clean
(#860)。修复带有
VERTEX_COLOR
输出参数的函数代码生成 (#850)。在
Makevars.win
中使用-lquadmath
,以兼容 Microsoft R Open 等其他 R 发行版 (#855)。getRversion()
使用字符串。
文档
添加 cffr 文件和自动更新它的 GHA 工作流 (#873)。
取消弃用
neighborhood()
(#851)。从 DESCRIPTION 中移除对 AUTHORS 的冗余引用。
igraph 1.5.0
CRAN 发布日期:2023-06-16
破坏性变更
图对象的内部格式已以一种大多向后兼容的方式更改,以准备将 C 核心升级到 0.10。详情请参见 https://github.com/igraph/rigraph/wiki/The-igraph-object-format。访问使用旧版 igraph 创建的图对象会给出清晰的错误消息并附带说明 (#832)。igraph 1.4.3 或更早版本无法读取新格式,尝试读取时会引发以下错误
This graph was created by an old(er) igraph version.
Call upgrade_graph() on it to use with the current igraph version
For now we convert it on the fly...
Error in is_directed(object) :
REAL() can only be applied to a 'numeric', not a 'NULL'
唯一支持的补救措施是将 igraph 包升级到 1.5.0 或更高版本。
graph_version()
现在返回一个整数标量 (#832, #847),igraph 1.5.0 版本中为 4
(#835)。
新特性
顶点和边序列在用作属性时会转换为数值向量 (#808)。
新增
largest_component()
返回最大的连通分量 (#786, @ngmaclaren)。
错误修复
- 修复在
make_graph()
中使用非公式的simplify = ...
时的错误消息 (#834)。
测试
为
graph_from_literal()
添加更多测试 (#826)。重新启用序列化测试和
dyad_census()
的测试,稳定测试 (#809, #822, #823)。
文档
R 包的文档现已托管在 https://r.igraph.cn/ 上 (#780)。
更新
vignette("installation-troubleshooting")
。修复
?eigen_centrality
文档中的拼写错误 (@JJ)。将 DOI 添加到 CITATION (#773)。
igraph 1.4.2
CRAN 发布日期:2023-04-07
破坏性变更
移除
igraph.eigen.default()
和eigen_defaults
,引入内部函数eigen_defaults()
(#741)。
C 核心
更新 C 核心。
基于 ARPACK 的计算现在可中断。
shortest_paths()
和all_shortest_paths()
在传递无效的from
顶点并使用权重时不再崩溃。
详情请参见 diff。
错误修复
as_long_data_frame()
现在可以正确处理顶点属性,并适用于没有顶点属性的图 (#748)。as.hclust(hrg.fit(g))
再次可用 (#721)。
文档
文档现已在 https://igraph.cn/ 提供 (#743)。
重新组织函数参考 (#662)。
在示例中将
graph()
替换为make_graph()
(#738)。为
as.hclust.igraphHRG()
添加文档 (#733)。合并了
hub_score()
和authority_score()
的手册页 (#698)。重构贡献者列表 (#647)。
改进“家族”标题 (#679)。
改进 ego/neighborhood 函数的文档。
改进
transitivity()
的文档。
igraph 1.4.0
CRAN 发布日期:2023-02-10
破坏性变更
- 破坏性变更:允许在为所有顶点或边设置属性时更改属性类型;仅允许长度为1或目标集长度的属性 (#633)。
新增
-
tkplot()
新增了一个palette
参数,并且为了保持一致性,默认情况下现在使用与plot()
相同的调色板。 -
plot.igraph()
新增了一个loop.size
参数,可用于缩放环状边的公共半径。
已修复
- ARPACK 的默认最大迭代次数已增加到 3000,以匹配 igraph C 核心的设置。
cluster_leading_eigen()
中罕见的收敛问题已得到纠正。- 所有基于 ARPACK 的函数在生成随机起始向量时现在都会遵守 R 中设置的随机种子。
-
igraph_version()
在 1.3.4 版本中返回了一个无效值,现已纠正。 - 绘制图后,
par(xpd=...)
的值现在已恢复。 - 修复了
as.dendrogram.communities()
在大规模树状图中的一个错误,感谢 @pkharchenko (参见 PR #292)。 - 修复了
graph_from_incidence_matrix()
中的两个错误,这些错误阻止了从稠密或稀疏矩阵创建mode="all"
的有向图。 -
dfs()
在结果对象中意外返回了基于零的根顶点索引;现已修复,索引现在基于 1。 -
as_graphnel()
不再复制环状边。 -
as_graphnel()
现在检查输入图是否没有多重边。graphNEL 类不支持多重边。 -
convex_hull()
现在返回带有基于 1 索引的凸包顶点。 - 代码库中的一些
rgl.*()
函数调用已被等效的*3d()
函数调用取代,以准备rgl
中即将进行的弃用(参见 PR #619)。 -
plot.igraph()
不再在调用plot.default()
时使用frame=...
部分参数。frame.plot
的默认NULL
值现在也已正确处理。 -
hub_score()
和authority_score()
在无向图的邻接矩阵对角线上只考虑了一次自环,因此结果与eigen_centrality()
在带环无向图上获得的结果不一致。现已纠正。 -
distances()
当algorithm='johnson'
时不再忽略mode
参数。
已弃用
-
automorphisms()
已重命名为count_automorphisms()
;旧名称仍然可用,但已被弃用。
igraph 1.3.5
CRAN 发布日期:2022-09-22
新增
-
plot.igraph()
的mark.groups=...
参数现在接受communities
对象
已修复
sample_pa()
和sample_aging_pa()
中不再允许负度指数。包已更新,以兼容 Matrix 1.5。
其他
- 文档改进和修复。
igraph 1.3.4
CRAN 发布日期:2022-07-19
新增
-
sample_asym_pref()
现在在名为outtype
和intype
的顶点属性中返回生成的顶点类型。
已修复
layout_nicely()
如果被分配给图的layout
属性,则不再无限递归layout_nicely()
在存在非正边权重时会忽略边权重。这是必要的,因为 igraph 1.3.3 开始在layout_with_fr()
和layout_with_drl()
中验证边权重,导致在加权图上使用负权重调用layout_nicely()
时出错。由于layout_nicely()
是plot()
的默认布局算法,大多数用户甚至没有意识到他们实际上在幕后使用了 FR 或 DrL 布局。现在,策略是layout_nicely()
会尽可能地完成任务而不会出错,即使这意味着必须忽略边权重。如果发生这种情况,将打印警告。
igraph 1.3.3
CRAN 发布日期:2022-07-14
新增
reverse_edges()
反转图中特定或所有边。V()
和E()
的单括号索引默认在索引表达式中解析属性名(例如,E(g)[weight > x]
匹配权重大于阈值的边)。如果属性屏蔽了局部评估上下文中的某个变量,这可能会导致问题。我们现在提供了一个称为.env
的代词(类似于rlang::.env
),它允许您强制将属性名查找定位到调用环境。为了完整起见,我们还提供了.data
(类似于rlang::.data
)来强制将属性名查找仅限于顶点/边属性。这些代词会自动注入到评估索引表达式的环境中。
已弃用
igraph 1.3.2
CRAN 发布日期:2022-06-13
C 核心已更新至 0.9.9,修复了一系列错误。
已修复
- 零大小
communities
对象的长度现在已正确报告。 -
layout_with_kk()
在使用默认初始坐标时无法产生合理结果。此问题已纠正,但此函数不再为给定图生成与之前完全相同的输出。要恢复以前的行为,请在 2D 中使用layout_with_kk(g, coord=layout_in_circle(g))
,或在 3D 中使用layout_with_kk(g, dim=3, coord=layout_on_sphere(g))
。 - 使用
v[x, na_ok=T]
对igraph.vs
对象进行索引现在可以在所有情况下正确处理na_ok
参数;以前的版本在x
为单个数字时会忽略它。
其他
- 文档改进和修复。
igraph 1.3.1
CRAN 发布日期:2022-04-20
已修复
-
graph_from_adjacency_matrix()
现在可以与稀疏矩阵一起使用,即使稀疏矩阵中的单元格值未指定。 - 修复了当
modularity=FALSE
和membership=FALSE
时cluster_walktrap()
中的崩溃问题。 -
cluster_walktrap()
不再接受无效的权重向量。 -
cluster_walktrap()
不再为非连通图返回无效长度的模块化向量。这也修复了此函数在加权非连通图上的一些罕见故障。 -
edge_attr()
不再忽略其index=...
参数。 -
automorphisms()
、automorphism_group()
和canonical_permutation()
现在允许在sh
参数中使用 C 核心支持的所有可能值。早期版本仅支持"fm"
。 vertex.frame.width
绘图参数现在允许零和负值;这些值将简单地移除相应顶点的轮廓。isomorphic()
中 BLISS 同构算法的sh
参数文档已修复;早期版本错误地引用了sh1
和sh2
。-
dominator_tree()
现在符合其文档中关于结果的dom
组件的描述:它包含每个顶点的支配顶点索引,以及支配树根的-1
。 - 文档中已移除对
page_rank()
的"power"
算法的提及,因为此方法不再可用。 - 其他多项文档修复,以使文档与 igraph 1.3 中的新行为保持一致。
igraph 1.3.0
CRAN 发布日期:2022-04-01
C 核心已更新至 0.9.7,修复了一系列错误并引入了许多新功能。
新增
-
has_eulerian_path()
和has_eulerian_cycle()
判断图中是否存在欧拉路径或欧拉回路。 -
eulerian_path()
和eulerian_cycle()
返回图中欧拉路径或欧拉回路中的边和顶点。 -
any_loop()
检查图是否包含至少一条自环边。 -
is_tree()
检查图是否为树,并找到可能的根。 -
to_prufer()
将树图转换为其 Prufer 序列。 -
make_from_prufer()
从其 Prufer 序列创建树图。 -
sample_tree()
用于均匀随机抽样带标签的树。 -
sample_spanning_tree()
用于均匀随机抽样无向图的生成树。 -
automorphisms()
和canonical_permutation()
现在支持顶点颜色。 -
random_edge_walk()
记录随机游走过程中遍历的边。 -
harmonic_centrality()
计算顶点的谐波中心性,可选择对路径长度进行截止。 -
mean_distance()
现在支持边权重,并且当传递details=TRUE
参数时,它还可以返回非连通顶点对的数量。 -
greedy_vertex_coloring()
基于简单的贪婪算法查找顶点着色。 -
bridges()
查找图中的桥(割边)。 - 圆形、矩形和正方形顶点形状的边框宽度现在可以通过
frame.width
顶点属性或vertex.frame.width
关键字参数在图上进行调整,感谢 @simoncarrignon。详情请参见 PR #500。 -
automorphism_group()
返回图中自同构群的一个可能的(不一定是最小的)生成集。 -
global_efficiency()
计算图的全局效率。 -
local_efficiency()
计算图中每个顶点的局部效率。 -
average_local_efficiency()
计算图中顶点集的平均局部效率。 -
rewire(each_edge(...))
现在支持仅重连每条边的一个端点。 -
realize_degseq()
以确定性方式从度序列生成图。它也可用作make_(degseq(..., deterministic=TRUE))
。 -
clique_size_counts()
计算不同大小的团,而无需存储所有团。 -
feedback_arc_set()
在图中找到最小权重反馈弧集,可以使用精确的整数规划算法或线性时间近似算法。 -
make_bipartite_graph()
现在支持带有名称的顶点。 -
shortest_paths()
现在支持带有负边权重的图。 -
min_cut()
现在支持 s-t 最小割,即使value.only=FALSE
。 -
as.matrix()
现在支持将 igraph 图转换为邻接矩阵或边列表矩阵表示。更多详情请参见as.matrix.igraph()
。此函数从intergraph
迁移而来;感谢 Michal Bojanowski。
已修复
-
is_connected()
现在对空图返回 FALSE。 - 在图上调用
length()
现在返回顶点的数量,使其与使用[[
对图进行索引保持一致。 -
当
unconnected=FALSE
时,diameter()
现在对于非连通图正确返回无穷大。以前的版本返回顶点数量加一,这对于加权图显然是无效的。 -
当
unconnected=FALSE
时,mean_distance()
现在正确地将非连通顶点之间的路径长度视为无穷大。以前的版本使用顶点数量加一,对这个数字增加了偏差,即使图是加权的,并且顶点数量加一不能安全地被认为是比任何“有效”路径更长的路径。 -
layout_with_sugiyama()
现在正确处理恰好一个额外虚拟节点的情况;修复了 #85。 -
bfs()
和dfs()
回调函数现在正确接收基于 1 的顶点索引和等级;早期版本是基于 0 的。 - 从
bfs()
或dfs()
回调中意外返回非逻辑值不再导致 R 崩溃。 - 在图上调用
print()
时,如果max.lines
值很小(小于打印属性列表和标题所需的行数),不再引发错误;修复了 #179。 -
as_adjacency_matrix(edges=TRUE, sparse=TRUE)
现在一致地返回矩阵中每个单元格的最后一条边 ID,而不是求和。 - 现在正确处理在由两个顶点组成的
path()
对象上使用+
和-
运算符的情况;修复了 #355。 -
topo_sort()
现在如果输入图不是无环图,则会抛出错误,而不是返回不正确的偏序。 - 加权传递性计算(即
transitivity(mode="barrat")
)现在对多图会抛出错误;该实现对多图不起作用,早期版本也没有对此发出警告。
已更改
bfs()
和dfs()
的neimode
参数已重命名为mode
,以与其他函数保持一致。旧的参数名称已弃用,并将在 1.4.0 版本中移除。-
bfs()
和dfs()
回调函数现在正确接收基于 1 的顶点索引和等级;早期版本是基于 0 的。(这实际上是一个错误修复,因此也在“已修复”部分中提及。) -
closeness()
、betweenness()
和edge_betweenness()
现在都单独接受cutoff
参数。estimate_closeness()
、estimate_betweenness()
和estimate_edge_betweenness()
成为别名,具有相同的签名。它们**未**被弃用,但其实现可能会在未来版本中改变,以提供适当的估计方案,而不是简单的基于截止值的近似。如果您明确需要截止值并希望结果在未来版本中可重现,请在代码中使用带有cutoff
参数的closeness()
、betweenness()
和edge_betweenness()
。 -
closeness()
现在在计算期间只考虑**可达**顶点;换句话说,对于非连通图,中心性现在是按组件计算的。早期版本考虑了**所有**顶点。
已弃用
- 为
closeness()
、betweenness()
和edge_betweenness()
使用cutoff=0
已弃用;如果您需要精确分数,请使用负截止值。从 igraph 1.4.0 开始,cutoff=0
将按字面意义解释。 -
当
centr_degree_tmax()
在没有明确的loops
参数的情况下调用时,现在会打印警告。从 igraph 1.4.0 开始,loops
将是强制性的。 nexus_list()
、nexus_info()
、nexus_get()
和nexus_search()
函数现在返回错误,告知用户 Nexus 图存储库已离线(实际上,几年前就已离线)。这些函数将在 1.4.0 版本中移除。as_adjacency_matrix()
的edges
参数已弃用;它将在 igraph 1.4.0 版本中移除。
已移除
- 已移除已弃用的
page_rank_old()
函数和page_rank()
的已弃用power
方法。
igraph 1.2.10
CRAN 发布:2021-12-15
2021 年 12 月 14 日
已修复
- macOS 版本的
igraph
在 CRAN 上意外地没有 GraphML 支持而构建;现在应该已经修复。
igraph 1.2.7
CRAN 发布:2021-10-15
2021 年 10 月 15 日
C 核心已更新至 0.8.5 版本,修复了一系列错误并引入了许多新函数。
新增
已修复
-
make_lattice()
在打印警告的同时正确地将length
四舍五入到最接近的整数 (#115)。 -
make_empty_graph(NULL)
现在打印错误而不是生成无效图 (#404)。 -
make_graph(c())
现在生成空图而不是打印误导性错误消息 (#431)。 - 打印图时,如果某些边的两个端点的名称都为 NA,则不再产生误导性错误消息 (#410)。
- 与二部图相关的函数的
types
参数在类型强制转换为布尔值时现在会打印警告 (#476)。 - 介数归一化不再溢出 (#442)。
-
layout_with_sugiyama()
即使图中只有一个顶点,也返回 matrix 类型的布局 (#408)。 - 绘制空图(即没有顶点的图)不再抛出错误 (#387)。
已弃用
modularity.matrix()
的membership
参数现在已弃用,因为该函数无论如何都不需要它。-
modularity()
在应用于有向图时现在会打印警告,因为 igraph 的 C 核心实现在 0.8.5 版本中不支持有向图。此警告将在 R 接口的下一个小版本(1.3.0)中变为错误;当 C 核心更新到支持有向网络模块化的版本时,该错误将被移除。 -
transitivity()
在其局部变体(type="local"
)被调用在有向图或多边图上时现在会打印警告,因为 igraph C 核心的实现在 0.8.5 版本中在这些情况下无法可靠工作。此警告将在 R 接口的下一个小版本(1.3.0)中变为错误;当 C 核心更新到支持具有多边网络传递性的版本时,该错误将被移除。
杂项
- 文档改进。
igraph 1.2.1
CRAN 发布:2018-03-10
- GLPK 库是可选的,如果它不可用,则
cluster_optimal()
函数将无法工作。不幸的是,我们不能再将 GLPK 库捆绑到 CRAN 上的 igraph 中,因为 CRAN 维护者禁止其源代码中的 pragma。 - 移除了 NMF 包依赖项以及相关函数。
- 修复了没有 libxml2 的编译问题
igraph 1.1.1
CRAN 发布:2017-07-16
2017 年 7 月 13 日
- 图 ID 显示在标题中,并添加了
graph_id
函数 - 修复了某些索引值的
edge_attr
- 修复了
bfs()
的一个错误,restricted
参数是基于零的 -
match_vertices
现在已导出 -
%>%
以更好的方式重新导出,以避免与其他包冲突 -
ego_
函数现在默认为order = 1
- 新增函数
igraph_with_opt
,用于在临时 igraph 选项设置下运行代码 - 修复了损坏的
sample_asym_pref
函数 - 修复了
curve_multiple
以避免对具有自循环的图发出警告。 - NMF 包现在只是建议使用,而不是硬性依赖
- 修复 gen_uid.c _SVID_SOURCE 问题
- 避免将直线绘制为贝塞尔曲线
- 使用
pkgconfig
包进行选项设置。这允许按包设置选项。例如,使用 igraph 的包可以在其.onLoad()
函数中将return.vs.es
设置为FALSE
,然后如果**从该包调用**,igraph 将返回普通的数字向量而不是顶点/边序列。 -
igraph_options()
返回更新选项的**旧**值,这实际上很有用,返回新值则不然。 -
with_igraph_opt()
函数用于临时更改 igraph 选项的值。 -
get.edge()
已弃用,请改用ends()
。(igraph 1.0.0 已经如此,但我们忘记在 NEWS 中添加这一点。) - 不重新定义
.Call()
,以加快本地调用速度。 - 加快顶点序列索引的特殊情况。
- 删除了一个
anyNA()
调用,以兼容旧版 R。 - 修复了一个快速贪婪社区查找错误,https://github.com/igraph/igraph/issues/836
- 修复了
head_of()
和tail_of()
,它们被混淆了。 - 绘图:使
label.dist
独立于标签长度,修复了 #63。 - 绘图:对未知图形参数不报错。
- 从基本包导入函数,以消除
R CMD check
的NOTE
。 - 重新添加对 Fruchterman-Reingold 布局中边权重的支持
- 检查
modularity()
中的成员向量。 - 将
str.igraph()
重命名为print_all()
。 - 在导出的图中,使用 igraph 版本而不是 @VERSION@ #75。
- 现在可以在
V()
或E()
索引中使用的函数以点开头。旧名称已弃用。新名称:.nei()
,.innei()
,.outnei()
,.inc()
,.from()
,.to()
。#22 - 修复将图转换为 graph::graphNEL 的包:它们不再需要手动附加“graph”了。
- 修复了
layout_with_dh
、layout_with_gem
和layout_with_sugiyama
中的错误。它们在某些情况下会崩溃。
igraph 1.0.1
CRAN 发布:2015-06-26
2015 年 6 月 26 日
一些小更新
- 文档修复。
- 不再需要 C++11 编译器。
- Fedora、Solaris 和 Windows 编译修复。
igraph 1.0.0
CRAN 发布:2015-06-24
2015 年 6 月 21 日
发布说明
这是 igraph 的一个新主版本,所以就叫它 1.0.0 吧。这并不意味着它已经准备就绪,它永远不会真正准备好。
本次发布的最大变化是:- 新的函数名称。大多数函数已被重命名,以使其更具一致性和可读性。(放心,旧名称仍然可以使用,无需更新任何代码。)- 更好的顶点和边序列操作。大多数函数返回正确的顶点/边序列而不是数字 ID。- 多功能的 make_()
和 make_graph()
函数用于创建图。
重大变化
- 许多函数已重命名。旧名称未在文档中列出,但仍可使用。
- 一个通用的
make_graph()
函数用于创建图。 - 一个通用的
layout_()
(注意下划线!)函数用于创建图布局,另请参阅add_layout_()
。 - igraph 数据类型已更改。您需要对使用以前 igraph 版本创建的图调用
upgrade_graph()
。 - 顶点和边序列操作:并集、交集等。
- 顶点和边序列只能与它们所属的图一起使用。现在对此进行了严格检查。
- 大多数返回顶点或边(子)集的函数现在返回顶点或边序列。
- 顶点和边序列现在有一个
[[
运算符,用于方便查看顶点/边元数据。 - 顶点和边序列实现为弱引用。另请参见
as_ids()
函数,用于将它们转换为简单 ID。 - 现在可以为圆形布局指定顶点顺序。
- Davidson-Harel 布局算法
layout_with_dh()
。 - GEM 布局算法
layout_with_gem()
。 - 邻域函数有一个
mindist
参数,用于考虑的最小距离。 -
all_simple_paths()
函数用于列出图中所有简单路径。 -
triangles()
列出图中所有三角形。 - Fruchterman-Reingold 和 Kamada-Kawai 布局算法已从头重写。它们更快,并且严格遵循原始出版物。
- 更美观的图、顶点和边序列打印。
-
local_scan()
函数计算扫描统计量。 - 嵌入:
embed_adjacency_matrix()
和embed_laplacian_matrix()
。 - 乘积运算符:
*
,同一个图多次。也可以用作rep()
。 - 更好的默认颜色,顶点调色板。
- 图上的随机游走:
random_walk()
-
adjacent_vertices()
和incident_edges()
函数,它们是矢量化的,与neighhors()
和incident()
不同。 - 使用
as_long_data_frame()
将图转换为**长**数据框。
igraph 0.7.1
CRAN 发布:2014-04-22
2014 年 4 月 21 日
发布说明
一些错误修复,以确保“Statistical Analysis of Network Data with R”中包含的代码正常工作。请参阅 https://github.com/kolaczyk/sand
详细变更:
- 图绘制:修复弯曲边的标签,问题 #181。
- 图绘制:允许在给定位置固定边标签,问题 #181。
- 二部投影后删除“type”顶点属性,投影不再是二部的,问题 #255。
- 正确打印标题中的逻辑属性(即用
l
编码,而不是x
,x
用于复杂属性)。问题 #578。 - 添加了
communities
对象的构造函数,请参见create.communities()
。问题 #547。 - GraphML 解析器中更好的错误处理。
- GraphML 读取器现在更加宽松;这使得可以读取从 yWorks 应用程序保存的 GraphML 文件。
- 修复了
constaint()
中的一个错误,问题 #580。 - 二部投影现在检测无效边而不是给出神秘错误,问题 #543。
- 修复了
graph.formula()
的simplify
参数,该参数已损坏,问题 #586。 - 函数
crossing()
为结果添加了更好的名称,修复了问题 #587。 - 如果输入图不简单,
sir()
函数会报错,修复了问题 #582。 - 现在不允许从 igraph 回调中调用 igraph 函数,修复了问题 #571。
igraph 0.7.0
CRAN 发布:2014-02-05
2014 年 2 月 4 日
发布说明
库本身增加了一些新功能,项目生命周期中也有其他重要变化。感谢大家发送代码和报告错误!
igraph @ github
igraph 的开发已从 Launchpad 迁移到 github。这实际上是在几个月前发生的,但从未正式宣布。报告错误的地方是 https://github.com/igraph/igraph/issues。
新主页
igraph 的主页现在托管在 https://igraph.cn,它是一个全新的页面。我们希望使其更易于使用和现代化。
更好的夜间下载
您可以在 https://igraph.cn/nightly 下载 igraph 的夜间构建版本。源代码和二进制 R 包(适用于 Windows 和 OSX)都已构建。
新功能和错误修复
- 添加了层次随机图的演示,通过
demo(hrg)
调用。 - 在写入 GraphML 文件时,使属性前缀可选。
- 添加了函数
mod.matrix()
。 - 在主导特征向量社区检测中支持边权重。
- 添加了 LAD 库用于检查(子)图同构,版本 1。
- 逻辑属性。
- 添加了
layout.bipartite()
函数,一个简单的二列二部图布局。 - 支持二部 Pajek 文件中的关联矩阵。
- 矩阵格式的 Pajek 文件现在默认为有向的,除非它们是二部的。
- 当文件为矩阵格式时,支持 Pajek 中的加权(和有符号)网络。
- 修复了
barabasi.game()
中的一个错误,算法 psumtree-multiple 会冻结。 - 函数
layout.mds()
默认现在返回一个布局矩阵。 - 在 GraphML 和 GML 读取器和写入器中添加了对布尔属性的支持。
- 更改 MDS 布局坐标,第一维根据第一个特征值等。
-
plot.communities()
(实际上是plot.igraph()
)默认会在标记的组周围绘制边框。 - 打印图现在将
name
图属性转换为字符类型 - 方便的函数,用于一次查询和设置所有属性:
vertex.attriubutes()
、graph.attributes()
和edge.attributes()
。 - 函数
graph.disjoint.union()
现在处理属性。 - 重写
graph.union()
以正确处理属性。 -
rewire()
:现在支持生成和销毁循环。 - Erdos-Renyi 类型二部随机图:
bipartite.random.game()
。 - 支持
get_shortest_paths()
的新选项(predesesors 和 inbound_edges),并完全重组了get.shortest.paths()
的输出。 - 添加了
graphlets()
及相关函数。 - 修复了多级社区在没有任何合并时模块化值的问题。
- 修复了在矩阵表示中删除带 FALSE 边的错误。
- 修复
bonpow()
和alpha.centrality()
并确保调用稀疏求解器。 -
tkplot()
新闻:通过tkplot.setcoords()
启用从命令行设置坐标,并通过tkplot.canvas()
访问画布。 - 修复了
igraph_edge_connectivity()
中潜在的崩溃,原因是 C 代码中一个未初始化的变量。 - 避免
closeness()
及相关函数中的溢出。 - 在
bipartite.projection()
中将“type”转换为逻辑后检查 NA。 -
graphNEL
转换函数只在“graph”包未加载时才加载它,并且将其加载到搜索路径的末尾,以最大程度地减少冲突。 - 修复了从邻接矩阵创建图时的一个错误,现在我们将它们转换为 double 类型,以防它们是整数。
- 修复了 infomap 社区检测中无效内存读取(和潜在的崩溃)的错误。
- 修复了带有属性组合的函数中的一些内存泄漏。
- 移除了 SCG 函数中的一些内存泄漏。
- 修复了光线追踪器中的一些内存泄漏。
- 修复了
graph.bfs()
和graph.dfs()
中的内存泄漏。 - 修复了三元组普查中将结果的第一个元素设置为 NaN 的错误。
- 修复了
is.chordal()
中崩溃的错误。 - 修复了加权模块度计算中的一个错误,权重总和被截断为整数。
- 修复了加权多级社区中的一个错误,最大权重被四舍五入为整数。
- 修复了
centralization.closeness.tmax()
中的一个错误。 - 使用间隙启发式重新实现推拉最大流算法。
- 最大流函数现在返回关于推拉算法步骤的一些统计信息。
arpack()
函数现在在给定未知选项时会给出错误消息。- 修复了 Pajek 写入器中 ID 属性为数字时缺少空格的错误。
- 修复了当 ID 属性为非数字时导致 GML 读取器崩溃的错误。
- 修复了问题 #500,如果 BLISS 中的两个图在顶点或边数上不同,则可能发生段错误。
- 添加了
igraphtest()
函数。 - 修复了二元普查的不稳定性,有时会报告不正确的结果。
- 二元普查现在检测整数溢出并发出警告。
add.edges()
函数现在不允许顶点集中出现零。- 添加了一个函数来计算相邻三角形的数量:
adjacent.triangles()
。 - 添加了
graph.eigen()
函数,用于邻接矩阵上的特征问题。 - 为创建大量图的函数添加了一些变通方法,
decompose.graph()
和graph.neighborhood()
使用它。修复了问题 #508。 - 为
optimal.community()
添加了权重支持,解决了 #511。 - 更快的最大团查找。
- 添加了一个函数来计数最大团。
- 集合操作:并集、交集、不相交并集、差集、组合现在基于顶点名称(如果存在)工作并保留属性,解决了 #20。
- 移除了函数
graph.intersection.by.name()
、graph.union.by.name()
、graph.difference.by.name()
。 - 图上的
+
运算符现在,如果两个参数图都有名称,则调用graph.union()
,否则调用graph.disjoint.union()
。 - 添加了
igraph.version()
函数。 - 从随机块模型生成图:
sbm.game()
。 - 不再建议使用 stats、XML、jpeg 和 png 包。
- 修复了
set.vertex/edge.attribute
错误,该错误在复制后改变了两个图对象 (#533)。 - 修复了
barabasi.game
中导致崩溃的错误。 - 我们使用 PRPACK 计算 PageRank 分数,请参见 https://github.com/dgleich/prpack
- 为
bipartite.projection
添加了'which
参数 (#307)。 - 为中心性函数添加了
normalized
参数,修复了问题 #3。 - R:更好地处理复杂属性,顶点/边集上的
[[
,修复了 #231。 - 实现了
hrg.fit
中的start
参数 (#225)。 - 在 Reingold-Tilford 布局中设置根顶点,解决了 #473。
- 修复了有向图的介数归一化问题。
- 修复了
graph.density
中的一个错误,该错误导致无向图(带循环)的值不正确。 - 修复了在一个 C 调用中创建多个图时(例如通过
graph.decompose
)导致 #550 的错误。 - 修复了稀疏
graph.adjacency
在有一个边和零个边的图上的错误。 - 修复了一个导致 Bellman-Ford 最短路径计算失败的错误。
- 修复了
graph.adjacency
在无向、加权图和稀疏矩阵上的错误。 -
main
,sub
,xlab
和ylab
现在是合适的图形参数了 (#555)。 -
graph.data.frame
将参数强制转换为数据框 (#557)。 - 修复了加权无向图的最小割错误 (#564)。
- 用于模拟网络上流行病(SIR 模型)的函数,请参见
sir
函数。 - 修复了
graph.mincut
和相关函数中的参数顺序。 - 避免在查询函数和打印时复制属性 (#573),这些函数现在对于具有许多顶点/边和属性的图来说速度快得多。
- 当某些属性是整数时,加快了 GML 和 GraphML 文件的写入速度。以前非常非常慢。
- 修复了
graph.bfs
中的多个根顶点 (#575)。
igraph 0.6.6
CRAN 发布:2013-10-28
发布于 2013 年 10 月 28 日
修复了一些错误
- 修复了
infomap.community()
函数中潜在的崩溃。 - 修复了作用于顶点名称的运算符的各种问题 (#136)。
- 修复了
arpack()
手册页中的一个示例。 - 如果提供了未知选项,
arpack()
现在会给出错误消息 (#492)。 - 改进了
arpack()
的错误消息。 - 修复了 Pajek 写入器中 ID 属性为数字时缺少空格的问题。
- 修复了二元普查的不稳定性,有时会报告不正确的结果 (#496)。
- 修复了当 ID 属性为非数字时导致 GML 读取器崩溃的错误。
- 修复了 BLISS 中两个图的顶点或边数量不同时潜在的段错误 (#500)。
- 添加了
igraphtest()
函数以从 R 运行测试 (#485)。 - 二元普查现在会检测整数溢出并给出警告 (#497)。
- R:
add.edges()
现在不允许顶点集中出现零 (#503)。 - 为没有 C++ 命名空间的文件添加了命名空间。修复了与其他包(如 rgl)的一些不兼容问题和神秘的崩溃 (#523)。
- 修复了
set.vertex.attributes()
、set.edge.attributes()
和set.graph.attributes()
中导致副作用的错误 (#533)。 - 修复了
degree.distribution()
和cluster.distribution()
中的错误 (#257)。
igraph 0.6.5-2
CRAN 发布:2013-05-23
发布于 2013 年 5 月 16 日
解决了两个 CRAN 检查问题和一个 gfortran 错误(如果代码是从 C 调用且没有在“正确”位置提供字符串长度参数,则字符串边界检查不起作用)。
其他方面与 0.6.5-1 相同。
igraph 0.6.5-1
CRAN 发布:2013-02-28
发布于 2013 年 2 月 27 日
修复了一个令人烦恼的错误,该错误导致 CRAN 上的另外两个包损坏。
- 有时,如果属性是列表或其他复杂对象,则设置图属性会失败。
igraph 0.6.5
CRAN 发布:2013-02-25
发布于 2013 年 2 月 24 日
这是一个次要版本,用于修复 0.6.4 中一些非常烦人的错误。
- igraph 现在应该与较旧的 R 版本良好兼容。
- 绘制无箭头的边时,消除顶点和边之间的间隙。修复了 #1118448。
- 修复了 DrL 布局中潜在导致崩溃的数组越界索引错误。
- 修复了加权介数计算中的崩溃。
- 绘图:修复了矩形顶点形状上箭头错位的错误。
igraph 0.6.4
CRAN 发布:2013-02-04
发布于 2013 年 2 月 2 日
版本号没有错,出于技术原因,我们从 0.6 跳到 0.6.4。此版本实际上从未真正发布,但此版本的一些 R 包已上传到 CRAN,因此我们将此版本包含在此 NEW 文件中。
新功能和错误修复
添加了用于定义新顶点形状的顶点形状 API,以及几个新的顶点形状。
添加了
get.data.frame()
函数,与graph.data.frame()
相反。为 Pajek 读取器和写入器添加了二分图支持,解决了错误 #1042298。
degree.sequence.game()
现在有了一个新方法:“simple_no_multiple”。添加了
is.degree.sequence()
和is.graphical.degree.sequence()
函数。rewire()
有一个新方法:“loops”,可以创建自环边。Walktrap 社区检测现在处理孤立点。
layout.mds()
现在返回一个布局矩阵。layout.mds()
使用 LAPACK 而不是 ARPACK。处理
write.graph
和read.graph
中的“~”字符。错误 #1066986。添加了
k.regular.game()
。如果在函数调用中或作为顶点属性没有指定标签,则使用顶点名称进行绘图。修复了问题 #1085431。
power.law.fit()
现在可以使用 C 实现。修复了
barabasi.game()
中out.seq
为空向量时的错误。修复了带进度条的函数在从另一个包调用时失败的错误。
修复了通过
graph.adjacency()
从加权整数邻接矩阵创建图时的错误。错误 #1019624。修复了中心化计算中的溢出问题。
修复了
minimal.st.separators()
的错误,一些顶点集被错误地报告为分离器。错误 #1033045。修复了 VF2 同构函数中顶点颜色处理不当的错误。错误 #1032819。
Pajek 导出器现在总是引用字符串,感谢 Elena Tea Russo。
修复了
shortest.paths()
(Dijkstra 算法)中处理小边权重进行最短路径计算的错误。感谢 Martin J Reed。加权传递性如果
vids
为 NULL,则使用V(graph)
作为vids
。修复了“饼图”顶点与其他顶点形状一起绘制时的错误。
加快了图的打印速度。
通过避免复制图,加快了属性查询和其他基本操作。错误 #1043616。
修复了 ARPACK 函数中 NCV 设置的错误。它不能大于矩阵大小。
layout.merge()
的 DLA 模式现在有更好的默认值。修复了
layout.mds()
中导致顶点重叠的错误。修复了
layout.spring()
中的错误,它无法正常工作。修复了完全失效的
layout.svd()
。修复了
layout.graphopt()
中导致警告并在某些平台上崩溃的错误。修复了
community.to.membership()
。错误 #1022850。修复了
graph.incidence()
在调用时参数非矩阵导致的崩溃。修复了
get.shortest.paths
中当输出设置为“both”时的错误。母题查找函数对于非母题的同构类(即不连通)返回 NA。修复了错误 #1050859。
修复了当给定
attr
且属性具有某种复杂类型时get.adjacency()
的错误。错误 #1025799。修复了
graph.adjacency()
中密集矩阵的属性名称。错误 #1066952。修复了
alpha.centrality()
的不稳定行为。修复了给定
attr
时的 igraph 索引。错误 #1073705。修复了计算有向图最大团时的错误。错误 #1073800。
修复了最大团搜索中的错误,解决了 #1074402。
计算 PageRank 时,对负权重发出警告。
修复了
dense
、unweighted graph.adjacency
中diag=FALSE
时的错误。解决了问题 #1077425。修复了
eccentricity()
和radius()
中的错误,结果经常完全错误。修复了
get.all.shortest.paths()
中某些边权重为零时的错误。graph.data.frame()
在顶点名称为数字时更加谨慎,以避免其科学计数法。修复了问题 #1082221。改进了对顶点名称中 NA 值的检查。修复了问题 #1087215。
修复了 DrL 布局生成器中潜在的崩溃。
修复了 Reingold-Tilford 布局中当图是有向且
mode != ALL
时的错误。
igraph 0.6
CRAN 发布:2012-06-14
发布于 2012 年 6 月 11 日
另请参见发布说明:http://igraph.sf.net/relnotes-0.6.html
R:主要新功能
- 顶点和边从 1 开始编号,而不是 0。请注意,这使得大多数旧的 R igraph 代码与 igraph 0.6 不兼容。如果您想使用旧代码,请使用 igraph0 包。更多信息请参见 http://igraph.sf.net/relnotes-0.6.html。
- “[”和“[[”运算符现在可以用于 igraph 图,对于“[”图表现为邻接矩阵,对于“[[”图被视为邻接列表。使用一些新运算符操作图结构(即添加/删除边和顶点)也变得简单得多。更多信息请参见 ?graph.structure。
- 在所有接受顶点或边向量或列表的函数中,可以使用顶点/边名称代替数字 ID。
- 新包“igraphdata”,包含一些可以直接在 igraph 中使用的数据集。
- Igraph 现在支持从 Nexus 在线数据仓库加载图,请参见
nexus.get()
、nexus.info()
、nexus.list()
和nexus.search()
。 - 所有社区结构查找算法现在都返回一个“communities”对象,该对象具有许多有用的操作,详情请参见 ?communities。
- 顶点和边属性现在处理得更好。它们尽可能地保留,并且可以通过灵活的 API 进行组合。参见 ?attribute.combination。
- R 现在以更结构化和信息丰富的方式将 igraph 图打印到屏幕上。
summary()
的输出也相应更新。
R:其他新功能
- 可以通过着色在图上标记顶点组。社区和内聚块默认使用此方式绘制。
- 现在提供了一些 igraph 演示,通过“demo(package=“igraph”)”查看列表。
- igraph 现在在绘制图时尝试选择最优布局算法。
- 添加了一个使用 Tcl/Tk 的简单控制台。它包含一个用于状态消息的文本区域和一个状态栏。参见
igraph.console()
。 - 重新实现了 igraph 选项支持,请参见
igraph.options()
和getIgraphOpt()
。 - Igraph 函数现在可以打印状态消息。
R:新或更新的函数
社区检测
- 添加了 Blondel 等人的多级模块化优化社区结构检测算法,请参见
multilevel.community()
。 - 两个社区结构之间的距离:
compare.communities()
。 - 通过精确模块化优化实现社区结构,
optimal.community()
。 - 分层随机图和社区查找,移植了 Aaron Clauset 的代码。请参见
hrg.game()
、hrg.fit()
等。 - 添加了 InfoMAP 社区查找方法,感谢 Emmanuel Navarro 提供的代码。请参见
infomap.community()
。
最短路径
- 离心率 (
eccentricity()
) 和半径 (radius()
) 计算。 - 使用
get.shortest.paths()
进行最短路径计算现在可以返回最短路径上的边。 get.all.shortest.paths()
现在支持边权重。
中心性
- 度、紧密、介数和特征向量中心性的中心化分数。请参见
centralization.scores()
。 - 个性化 Page-Rank 分数,请参见
page.rank()
。 - 子图中心性,
subgraph.centrality()
。 - 权威 (
authority.score()
) 和枢纽 (hub.score()
) 分数现在支持边权重。 - 在介数和紧密计算中支持边权重。
bonpow()
,Bonacich 幂中心性和alpha.centrality()
,Alpha 中心性计算现在默认使用稀疏矩阵。- 特征向量中心性计算,
evcent()
现在适用于有向图。 - 介数计算现在可以使用任意大的整数,这对于某些类似格的图来说是必需的,以避免溢出。
输入/输出和文件格式
- 在
graph.read()
中支持 DL 文件格式。请参见 http://www.analytictech.com/networks/dataentry.htm。 - 在
write.graph()
中支持写入 LEDA 文件格式。
绘图和布局
- 星形布局:
layout.star()
。 - 基于多维缩放的布局,
layout.mds()
。 - 新布局
layout.grid()
和layout.grid.3d()
。 - 用于分层有向无环图的 Sugiyama 布局算法,
layout.sugiyama()
。
图生成器
- 新图生成器:
static.fitness.game()
,static.power.law.game()
。 barabasi.game()
已重写,现在支持三种算法,默认算法不生成多重或自环边。图生成过程现在可以从提供的图开始。- Watts-Strogatz 图生成器
igraph_watts_strogatz()
现在可以创建没有自环边的图。
其他
- 添加了谱粗粒度算法,请参见
scg()
。 cohesive.blocks()
函数已用 C 重写,现在速度快得多。它也有一个更简洁的 API。请参见demo("cohesive")
。- 添加了具有许多回调的通用广度优先和深度优先搜索实现,
graph.bfs()
和graph_dfs()
。 - 在 VF2(子)图同构函数中支持顶点和边着色 (
graph.isomorphic.vf2()
,graph.count.isomorphisms.vf2()
,graph.get.isomorphisms.vf2()
,graph.subisomorphic.vf2()
,graph.count.subisomorphisms.vf2()
,graph.get.subisomorphisms.vf2()
)。 - 同配系数,
assortativity()
,assortativity.nominal()
和assortativity.degree()
。 - 按顶点名称工作的顶点运算符:
graph.intersection.by.name()
,graph.union.by.name()
,graph.difference.by.name()
。感谢 Magnus Torfason 贡献了他的代码! - 计算非诱导子图的函数:
subgraph.edges()
。 - 更全面的最大流和最小割计算,请参见函数
graph.maxflow()
,graph.mincut()
,stCuts()
,stMincuts()
。 - 检查有向图是否为 DAG,
is.dag()
。 has.multiple()
用于判断图是否有多重边。- 添加了一个计算顶点多样性分数的函数,
graph.diversity()
。 - 图拉普拉斯计算 (
graph.laplacian()
) 现在支持边权重。 - 双连通分量计算,
biconnected.components()
现在返回分量本身。 bipartite.projection()
计算边的多重性。- 最大基数搜索:
maximum.cardinality.search()
和弦图性测试:is.chordal()
- 凸包计算,
convex.hull()
。 - 收缩顶点,
contract.vertices()
。
igraph 0.5.2
CRAN 发布:2009-04-14
发布于 2009 年 4 月 10 日
另请参见发布说明:http://igraph.sf.net/relnotes-0.5.2.html
R 接口中的新功能
- 为
betweenness()
、betweenness.estimate()
、layout.drl()
添加了进度条支持。 - 加快了介数估计。
- 加快了
are.connected()
。 - 添加了 Johnson 最短路径算法。
shortest.paths()
现在有一个'algorithm'
参数,用于手动选择各种实现。- 打印图或边时始终引用符号顶点名称。
- 平均最近邻度计算,
graph.knn()
。 - 加权度(也称为强度)计算,
graph.strength()
。 - 一些新函数支持二分图:
graph.bipartite()
、is.bipartite()
、get.incidence()
、graph.incidence()
、bipartite.projection()
、bipartite.projection.size()
。 - 支持使用
plot.igraph()
和tkplot()
绘制弯曲边。 - 为
alpha.centrality()
添加了加权图支持。 - 添加了 Raghavan 等人的标签传播社区检测算法,
label.propagation.community()
。 cohesive.blocks()
现在有一个'cutsetHeuristic'
参数,用于在两种切集算法之间选择。- 添加了一个“展开”树的函数,
unfold.tree()
。 - 新的
tkplot()
参数用于更改绘图区域。 - 添加了一个最小 GUI,通过
tkigraph()
调用。 - DrL 布局生成器,
layout.drl()
现在具有三维模式。
R 接口中已更正的错误
- 修复了 VF2 图同构函数中的错误。
- 修复了在
get.adjacency()
中请求稀疏邻接矩阵且图已命名时的错误。 degree.sequence.game()
中的 VL 图生成器现在检查度数之和是否为偶数。- 修复了许多问题以支持各种编译器,例如 GCC 4.4 和 Sun 的 C 编译器。
- 修复了
graph.automorphisms()
、Bellman-Fordshortest.paths()
、independent.vertex.sets()
中的内存泄漏。 - 修复了从 LGL 导入图并导出到 NCOL 格式时的错误 (#289596)。
cohesive.blocks()
在会话临时目录中创建其临时文件。write.graph()
和read.graph()
现在在给定未知参数时会给出错误消息。- GraphML 读取器检查属性名称以避免添加重复的“id”属性。
- 可以更改
leading.eigenvector.community()
的“ncv”ARPACK 参数。 - 修复了
path.length.hist()
中的错误,“unconnected”对于不连通和无向图是错误的。 - 改进了通过迭代器进行属性赋值的处理,这在手册中也已阐明。
- 改进了未知顶点形状的错误消息。
- 如果使用
unloadNamespace()
,则使 R 包干净地卸载。 - 修复了绘制方形顶点时的错误 (#325244)。
- 修复了当矩阵为“dgTMatrix”类的稀疏矩阵时
graph.adjacency()
中的错误。
igraph 0.5.1
CRAN 发布:2008-07-12
发布于 2008 年 7 月 14 日
另请参见发布说明:http://igraph.sf.net/relnotes-0.5.1.html
R 接口中的新功能
- 一个新的布局生成器 DrL。
- 对给定度序列的随机连通无向图进行均匀采样。
- 边标签绘制在边的 1/3 处,如果图有相互边,这样更好。
- “plot”中对顶点形状的初步和实验性支持。
- 新函数“graph.adjlist”从邻接列表创建 igraph 图。
- 与来自“graph”R 包的 graphNEL 图进行相互转换。
- Fastgreedy 社区检测现在可以利用边权重,这在 R 接口中缺失。
- 添加了“arrow.width”图形参数。
graph.data.frame
有一个新的参数“vertices”。graph.adjacency
和get.adjacency
支持稀疏矩阵,使用此功能需要“Matrix”包。graph.adjacency
将列/行名称添加为“name”属性。- 使用 Dijkstra 或 Belmann-Ford 算法计算加权最短路径。
- 最短路径函数对不可达顶点返回“Inf”。
- 新函数“is.mutual”用于查找有向图中的相互边。
- 添加了逆对数加权相似性度量(又称 Adamic/Adar 相似性)。
preference.game
和asymmetric.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
),现在它总是生成唯一的数字。这影响了 Gnm Erdos-Renyi 生成器,它现在总是生成简单图。 - 基本的 igraph 构造函数 (
igraph_empty_attrs
,所有函数都应在内部调用此函数) 现在检查顶点数量是否有限。 - LGL、NCOL 和 Pajek 图读取器现在正确处理错误。
- 非对称 ARPACK 求解器现在以一致的形式返回结果。
- 快速贪婪社区检测例程现在检查图是否简单。
- LGL 和 NCOL 解析器已更正,以处理各种行尾编码。
- Hub & authority 分数计算现在初始化 ARPACK 参数。
- 修复了 Walktrap 社区检测例程中应用于非连通图时的错误。
- 移除了一些小的内存泄漏,以及 Spinglass 社区结构检测函数中的一个大内存泄漏。
igraph 0.5
CRAN 发布:2008-02-13
发布于 2008 年 2 月 14 日
另请参见发布说明:http://igraph.sf.net/relnotes-0.5.html
R 接口中的新功能
添加了“rescale”、“asp”和“frame”图形参数。
从公式表示法创建图 (
graph.formula
)。正确处理图属性。
计算无向图的实际最小割。
添加了邻接列表、
get.adjlist
和get.adjedgelist
。特征向量中心性计算现在快得多。
正确的 R 警告,而不是将警告写入终端。
R 现在检查图形参数,未知参数不再被忽略,而是给出错误消息。
plot.igraph
现在有一个“add”参数,用于绘制多个图。plot.igraph
支持“main”和“sub”参数。layout.norm
现在是公共的,它可以规范化布局。可以为布局生成器提供起始位置。
在所有操作系统中,按下 CTRL+C/ESC 时始终释放内存。
plot.igraph
现在可以绘制方形顶点,请参见“shape”参数。graph.adjacency
在创建加权图时重写。我们尽可能使用
match.arg
。这意味着字符标量选项可以缩写,并且始终不区分大小写。VF2 图同构例程现在可以检查子图同构,并且能够返回匹配。
BLISS 图同构算法现在包含在 igraph 中。参见
canonical.permutation
、graph.isomorphic.bliss
。我们使用 ARPACK 进行特征值/特征向量计算。这意味着以下函数已重写:
page.rank
、leading.eigenvector.community.*
、evcent
。基于 ARPACK 的新函数:hub.score
、authority.score
、arpack
。Fruchterman-Reingold 布局的边权重 (
layout.fruchterman.reingold
)。线图计算 (
line.graph
)。Kautz 和 de Bruijn 图生成器 (
graph.kautz
,graph.de.bruijn
)。支持以 DOT 格式写入图。
添加了 Jaccard 和 Dice 相似系数 (
similarity.jaccard
,similarity.dice
)。计算边的多重性 (
count.multiple
)。添加了
graphopt
布局算法,layout.graphopt
。生成“著名”图 (
graph.famous
)。从 LCF 表示法创建图 (
graph.cf
)。二元普查和三元普查函数 (
dyad.census
,triad.census
)。检查简单图 (
is.simple
)。创建完整引用网络 (
graph.full.citation
)。创建路径长度直方图 (
path.length.hist
)。添加了森林火灾模型 (
forest.fire.game
)。DIMACS 读取器现在可以处理不同的文件类型。
双连通分量和割点 (
biconnected.components
,articulation.points
)。Kleinberg 的 hub 和 authority 分数 (
hub.score
,authority.score
)。as.undirected
现在处理属性。几何随机图生成器 (
grg.game
) 可以返回顶点的坐标。添加了将主特征向量社区结构结果转换为成员向量的函数 (
community.le.to.membership
)。加权快速贪婪社区检测。
加权 PageRank 计算。
通过引入路径长度截止值来估计紧密性、介数、边介数的函数 (
closeness.estimate
,betweenness.estimate
,edge.betweenness.estimate
)。加权模块化计算。
用于排列顶点的函数 (
permute.vertices
)。介数和紧密性计算速度加快。
read.graph
现在可以处理所有可能的行终止符(\r
,\n
,\r\n
)。walktrap 社区检测的错误处理已重写,计算现在可以中断。
maxflow/mincut
函数允许为边容量提供 NULL 指针,这意味着所有边的单位容量。
igraph 0.4.5
CRAN 发布:2007-12-22
发布于 2008 年 1 月 1 日
新增: - R 接口中新增内聚块查找功能,感谢 Peter McMahan 贡献代码。参见 James Moody 和 Douglas R. White, 2003, 《结构内聚与嵌入:社会群体的层次概念》(Structural Cohesion and Embeddedness: A Hierarchical Conception of Social Groups American Sociological Review 68(1):1-25)。 - 双连通分量和割点。 - R 接口:改进了属性打印。 - R 接口:可以通过“$”使用图属性。
错误修复: - Erdos-Renyi 随机图生成器已重写。
igraph 0.4.4
CRAN 发布:2007-10-03
发布于 2007 年 10 月 3 日
此版本应与新版 R 2.6.0 无缝协作。还修复了其他一些错误: - Erdos-Renyi 图生成器中的一个错误已修复,该生成器有时会添加一个额外的顶点。
igraph 0.4.3
CRAN 发布:2007-08-09
发布于 2007 年 8 月 13 日
这是错误修复版本序列中的下一个。感谢许多人发送错误报告。以下是更改: - 使用 R 或 Python 属性时,移除了一些内存泄漏。 - GraphML 解析器:现在正确处理多块中的实体和字符数据。 - 边介数社区结构检测中的一个错误已更正,如果从同一程序/会话多次调用,则会失败。 - 边介数社区结构:正确处理非连通图。 - 修复了与非连通图中的快速贪婪社区检测相关的错误。 - 使用不同类型的解析器(Push)读取 GraphML 文件。这对用户来说几乎是不可见的,但修复了读取 GraphML 文件时的一个非确定性错误。 - R 接口:现在,当使用向量作为有向图的 edge.width
参数调用时,plot
可以正确处理。 - R 接口:修复了 walktrap.community
和加权图的错误(拼写错误)。
igraph 0.4.2
CRAN 发布:2007-06-06
发布于 2007 年 6 月 7 日
这是另一个错误修复版本,因为上一版本的 R 包存在一个严重错误:它无法在 MS Windows 下以任何格式读取和写入图文件。
添加了一些其他内容: - 树的圆形 Reingold-Tilford 布局生成器。 - 修正了一个错误,Pajek 文件现在在 MS Windows 下正确写入。 - 在 R 接口中添加了 arrow.size
图形边参数。
igraph 0.4
CRAN 发布:2007-05-21
发布于 2007 年 5 月 21 日
此版本的主要新增功能是一系列社区检测算法和对 GML 文件格式的支持。以下是完整的更改列表:
R 接口中的新功能
由于内部表示方式的改变,使用旧版 igraph 存储的图无法可靠地用新版本读回。
neighbors
返回有序列表。添加了
is.loop
和is.multiple
。拓扑排序。
VF2 同构算法。
支持从图数据库读取图以进行同构。
graph.mincut
可以计算实际的最小割。添加了周长计算,感谢 Keith Briggs。
支持读取和写入 GML 文件。
添加了 Walktrap 社区检测算法,感谢 Matthieu Latapy 和 Pascal Pons。
添加了基于边介数的社区检测算法。
添加了 Clauset 等人的社区检测快速贪婪算法,感谢 Aaron Clauset 分享他的代码。
添加了 Mark Newman 的主特征向量社区检测算法。
添加了从社区检测算法输出创建树状图的函数。
添加了
community.membership
支持函数,从社区结构合并树创建成员向量。添加了模块化计算。
图形参数处理已完全重写,颜色和字体处理统一,请务必阅读 ?igraph.plotting。
新的边绘图参数:
arrow.mode
。修复了播放非线性
barabasi.game
时的错误。使用
rglplot
在 3d 中绘制效果更好:边也是 3d 的。rglplot
布局现在允许是二维的。rglplot
在绘制时暂停更新,这使其速度更快。所有三个绘图函数都正确绘制自环边。
打印图时更好地打印属性。
图的摘要打印属性名称。
is.igraph
已重写,以便可以从“igraph”类继承。支持进度条的函数现在有了更好看的进度条。
igraph 0.3.2
CRAN 发布:2006-12-14
发布于 2006 年 12 月 19 日
这是一个新的主要版本,包含许多新功能。
R 接口中的更改
- 从 SNA 移植了
bonpow
函数以计算 Bonacich 权力中心性。 get.adjacency
现在支持属性,这意味着它设置colnames
和rownames
属性,并且可以在矩阵中返回属性值而不是 0/1。grg.game
,几何随机图。graph.density
,图密度计算。- 现在可以使用
add.edges
或add.vertices
添加新边时轻松添加边和顶点属性。 graph.data.frame
从数据框创建图,这可以用于轻松创建具有边属性的图。plot.igraph
和tkplot
现在可以绘制自环边。graph.edgelist
从边列表创建图,也可以处理带有符号名称的边列表。get.edgelist
现在有一个“names”参数,可以返回符号顶点名称而不是顶点 ID,默认情况下返回“name”顶点属性。- 在屏幕上打印图时,也会打印符号名称(如果存在“name”属性)。
- 最大流和最小割函数:
graph.maxflow
,graph.mincut
。 - 边和顶点连通性:
edge.connectivity
,vertex.connectivity
。 - 边和顶点不相交路径:
edge.disjoint.paths
,vertex.disjoint.paths
。 - White 的凝聚度和粘附度测量:graph.adhesion, graph.cohesion
- 已添加 dimacs 文件格式
- as.directed 现在可处理属性
- 约束已修正,它现在也可处理加权图
- graph.adjacency 增加加权属性
- 已添加基于 Spinglass 的社区结构检测功能,以及 Joerg Reichardt – Stefan Bornholdt 算法:spinglass.community
- graph.extended.chordal.ring,扩展弦环图生成
- no.clusters 计算聚类数量,无需实际计算聚类本身
- 最小生成树函数已更新以保留属性
- 传递性也可计算局部传递性
- 已添加邻域相关函数:neighborhood, neighborhood.size, graph.neighborhood
- 基于顶点类型的新图生成器:preference.game 和 asymmetric.preference.game
igraph 0.2.1
CRAN 发布:2006-08-24
发布于 2006 年 8 月 23 日
这是一个错误修复版本。已修复的错误:- 互惠性已修正,以避免段错误 (segfaults) - 一些文档更新 - R 包的各项更新,使其符合 CRAN 规则
igraph 0.2
CRAN 发布:2006-08-23
发布于 2006 年 8 月 18 日
终于发布了!igraph 0.2 中有许多新功能,其中最重要的是:- 支持读写带有属性的 Pajek 和 GraphML 格式(并非所有 Pajek 和 GraphML 文件都受支持,详见文档)- RANDEDU 快速模式搜索算法已实现- 许多新的图生成器,包括博弈图和正则图- 许多新的结构属性:传递性、互惠性等- 图运算符:并集、交集、差集、结构洞等- 有向图和无向图之间的转换- 针对树和大型图的新布局算法、3D 布局等。
R 包中新增的功能:- 支持 CTRL+C - 新函数:图拉普拉斯、Burt 约束等 - 顶点/边序列完全重写,智能索引(详见手册) - 新的 R 手册和教程:《Network Analysis with igraph》,仍在开发中但很有用 - 使用 OpenGL 进行非常基本的 3D 绘图
尽管此版本已在 Linux、MS Windows、Mac OSX、Solaris 8 和 FreeBSD 上进行了部分测试,但未进行大量测试,因此可能包含错误,我们恳请您提交错误报告,以使 igraph 更好。