小编dav*_*d h的帖子

如何用固定位置控制igraph图布局?

我正在尝试绘制网络可视化以类似于流程图.我对以下代码非常接近,但我有几个问题:

  1. 这是最好的layout()算法,还是我可以为每个节点手动分配位置>
  2. 如何确保这些节点在图中不重叠(就像在这里一样)?
  3. 我可以将一个节点指定为"锚点"或起点吗?即,我可以将"C"作为最顶层或最左侧的节点吗?

非常感谢!!

library("igraph")
L3 <- LETTERS[1:8]
d <- data.frame(start = sample(L3, 16, replace = T), end = sample(L3, 16, replace = T),
                weight = c(20,40,20,30,50,60,20,30,20,40,20,30,50,60,20,30))


g <- graph.data.frame(d, directed = T)

V(g)$name 
E(g)$weight

ideg <- degree(g, mode = "in", loops = F)

col=rainbow(12) # For edge colors

plot.igraph(g, 
  vertex.label = V(g)$name, vertex.label.color = "gray20",
  vertex.size = ideg*25 + 40, vertex.size2 = 30,
  vertex.color = "gray90", vertex.frame.color = "gray20",
  vertex.shape = "rectangle",
  edge.arrow.size=0.5, edge.color=col, edge.width = E(g)$weight / …
Run Code Online (Sandbox Code Playgroud)

r igraph

26
推荐指数
2
解决办法
2万
查看次数

标签 统计

igraph ×1

r ×1