首页 > 解决方案 > R(igraph):从同一顶点开始和结束的边的方向

问题描述

我想更改在同一顶点开始和结束的边的方向。当我使用 plot.igraph 时,这些边都朝右,这意味着圆左侧的顶点将在其他边上重叠。有谁知道我们如何控制他们的方向,例如指向圆圈的外部?下面是我要编辑的实际数字。

问题示例

下面发布了一个小例子,如果你想玩的话:

library(igraph)
g <- data.frame(start=c("a","a","b","b", "c", "c"), end=c("a","b","b","c", "c", "a"))
graph <- graph.data.frame(g, directed = T)
plot(graph, layout = layout.circle(graph))

在此处输入图像描述

标签: rigraph

解决方案


您可以使用参数来控制它edge.loop.angle
查看帮助页面?igraph.plotting

plot(graph, layout = layout.circle(graph), 
     edge.loop.angle=c(0,0,4*pi/3,0, 2*pi/3,0))

带角度环的图形

请注意,所有边缘都需要一个角度,而不仅仅是循环,即使这仅适用于循环。此外,角度似乎给出了从水平方向顺时针旋转的量。


推荐阅读