我有一个包含100个顶点的图形g,我想从这个图形中删除多个顶点以获得g1,但是当我这样做时,我希望保留每个顶点在g中的位置.是否有可能做到这一点?
par(mfrow=c(1,2))
g <- erdos.renyi.game(100, 1/100)
comps <- clusters(g)$membership
colbar <- rainbow(max(comps)+1)
V(g)$color <- colbar[comps+1]
V(g)$size<-seq(0.05,5,0.05)
plot(g, layout=layout.fruchterman.reingold, vertex.label=NA)
g1<-g - c("1","2","7","10")
plot(g1, layout=layout.fruchterman.reingold, vertex.label=NA)
Run Code Online (Sandbox Code Playgroud)
我想到的一个工作,将是我用白色着色我不再想看到的顶点和边缘,但在开始这条路线之前,我想知道是否有一些不那么黑客的东西.
您可以从绘图中保存布局位置g:
locs <- layout.fruchterman.reingold(g)
plot(g, layout=locs, vertex.label=NA)
Run Code Online (Sandbox Code Playgroud)

然后,您可以在绘图时重复使用它们g1,删除已删除节点的位置:
g1<-g - c("1","2","7","10")
plot(g1, layout=locs[-c(1, 2, 7, 10),], vertex.label=NA)
Run Code Online (Sandbox Code Playgroud)
