尽管neighborNets 相对流行,但我找不到以下问题的任何解决方案。在 R 中,我正在尝试绘制一个 neighborNet(使用包创建phangorn
,对象类网络)。该包igraph
用于绘制静态 2D 图形,因此每次我重新绘制图形时,布局都会更改/旋转(igraph
显然是默认行为)。现在,如果我要绘制一个普通的 igraph,我只需保存布局,然后继续重复使用它:
fixed = layout.sphere(somegraph)
plot(somegraph, layout=fixed)
但这不适用于当前的问题。plot.networx 的帮助文件确实提到了 igraph 和布局,但仅在“另见”部分中。手动创建 xy 坐标矩阵是行不通的(如此处所建议的),节点标签/节点提示的位置在邻居网上很重要。我试过
library("phangorn")
library("igraph")
mydist = dist(matrix(sample(100), ncol=10)) # example data
nnet = neighborNet(mydist)
fixed = layout.sphere(nnet) # error, Not a graph object
fixed = layout.sphere(as.igraph(nnet)) # doesn't work properly, mangled graph
所以问题是,如何让它在
plot.networx(nnet, type="2D", layout = fixed) # ?