首页
学习
活动
专区
圈层
工具
发布
首页
学习
活动
专区
圈层
工具
MCP广场
社区首页 >问答首页 >保存版面吗?

保存版面吗?
EN

Stack Overflow用户
提问于 2016-12-02 07:40:10
回答 2查看 1.9K关注 0票数 3

我想知道是否有可能“保存”igraph网络的布局,以便其他人能够复制相同的图?目前,Fruchterman Reingold算法总是创建一个新的网络.

代码语言:javascript
运行
复制
par(mfrow=c(1,2))
g <- erdos.renyi.game(100, 1/100)
V(g)$size<-seq(0.05,5,0.05)

layout <- layout.fruchterman.reingold(g)
plot(g, 
     layout=layout, 
     vertex.label=NA)
g

所以从本质上说,我可以以某种方式保存和导出“布局”信息吗?

EN

回答 2

Stack Overflow用户

回答已采纳

发布于 2016-12-02 08:36:27

在布局之前,用set.seed()设置随机数生成器种子,例如:

代码语言:javascript
运行
复制
library(igraph)

g <- erdos.renyi.game(100, 1/100)
V(g)$size<-seq(0.05,5,0.05)

par(mfrow = c(2,2))

layout <- layout.fruchterman.reingold(g)
plot(g, layout=layout, vertex.label = NA, main = "No seed 1")
layout <- layout.fruchterman.reingold(g)
plot(g, layout=layout, vertex.label = NA, main = "No seed 2")

set.seed(1)
layout <- layout.fruchterman.reingold(g)
plot(g, layout=layout, vertex.label = NA, main = "With seed 1")
set.seed(1)
layout <- layout.fruchterman.reingold(g)
plot(g, layout=layout, vertex.label = NA, main = "With seed 2")

票数 3
EN

Stack Overflow用户

发布于 2016-12-02 14:26:31

it布局只是一个有N行和2列的矩阵,所以您可以保存矩阵,然后稍后再加载它。另一种选择是将矩阵的第一列分配给名为x的顶点属性,而将第二列分配给名为y的vettex属性,然后当您在没有指定layout参数的情况下绘制该图时将使用此布局。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/40927099

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档