在R中测试图的平面性

4

有没有一种方法可以在R中测试网络图是否是平面的?我在igraph中查找过,但没有找到。

我知道可以使用MATLAB的BGL工具箱,但我想知道是否有人在R中尝试过。


https://answers.launchpad.net/matlab-bgl/+question/93601 - shamalaia
@shamalaia 这对他在 R 中有什么帮助? - sco1
问题被标记为Matlab..也许对他有用。 - shamalaia
1个回答

5
RBGLbioconductor中的一个包,它提供了您所需要的功能。RBGL为图形分析(C++)提供了与Boost库的接口。
source("https://bioconductor.org/biocLite.R")
biocLite("RBGL")

library(RBGL)
library(igraph)

set.seed(1234)
g <- erdos.renyi.game(20, 1/5) ##Make an igraph graph
plot(g)

g <- as_graphnel(g) ## Convert igraph object to graphNEL object for planarity testing
boyerMyrvoldPlanarityTest(g)

# [1] FALSE

g <- erdos.renyi.game(20, 1/8)
plot(g)

g <- as_graphnel(g)
boyerMyrvoldPlanarityTest(g)
# [1] TRUE

非平面图

非平面图

平面图

平面图


抱歉没有表达清楚 - 我需要在R中如何完成它的帮助,而不是在MATLAB中。 - Bonono
2
这是一个 R 的解决方案。 - emilliman5
它已从CRAN中删除,并且在最新的R版本下无法工作。有什么想法吗? - Bonono
1
它在Bioconductor存储库中。我已经编辑了我的答案,以显示如何安装该软件包。 - emilliman5
我假设为了测试平面性,图必须采用graphNEL格式? - Bonono
同时值得一提的是,这仅适用于无向图! - Bonono

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接