首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >ggraph在边缘移除后保持布局

ggraph在边缘移除后保持布局
EN

Stack Overflow用户
提问于 2020-06-22 13:12:23
回答 1查看 95关注 0票数 1

我想在删除边后保持图形布局(顶点位置)。举个例子:

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

# create sample graph
g <- structure(list(from = c(1, 1, 2, 2, 3, 3), 
               to = c(2, 3, 4, 5, 6, 7)), 
          class = "data.frame", row.names = c(NA, 6L))

g <- graph_from_data_frame(g)

# plot with all edges 
ggraph(g, layout = 'tree') + 
  geom_edge_diagonal() +
  geom_node_point(size = 10) +
  theme_void()

现在删除几条边并重新绘制

代码语言:javascript
复制
g2 <- delete.edges(g, c(3,5))

ggraph(g2, layout = 'tree') + 
  geom_edge_diagonal() +
  geom_node_point(size = 10) +
  theme_void()

而这是所需的输出:

有没有一种简单的方法可以在删除边后保持顶点的位置?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2020-06-22 13:12:23

写出问题后,你只需要使用igraph::layout_as_tree保存第一张图的布局(或任何其他布局),它可以用于第二张图:

代码语言:javascript
复制
l <- igraph::layout_as_tree(g)

ggraph(g2, layout = l) + 
  geom_edge_diagonal() +
  geom_node_point(size = 10) +
  theme_void()

希望这能为别人节省一点时间。

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

https://stackoverflow.com/questions/62507826

复制
相关文章

相似问题

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