R中igraph中的R倒数边

标签 r graph nodes bidirectional igraph

我正在 R 中处理图形。我目前正在使用 igraph,我希望能够绘制图形的双向边“互惠边”。到目前为止,我已经看到可以绘制“双向”图​​,但不能绘制互易边,例如:E(1,3) 和 E(3,1) 可能会表示为双向边<-->,但是相反,我想绘制两个平行边,一个指向另一个 || 的相反方向。 在绘制“plot(rEG, recipEdges = "distinct")”时,Rgraphviz 中存在一个选项,可以实现这一点,但我更喜欢 igraph 上的绘图外观。提前致谢。

最佳答案

igraph中,您可以使用边缘属性curved来弯曲您想要的边缘。

例如,这是一个基于图的小型邻接矩阵:

library("igraph")
adj <- matrix(c(
    0,1,1,
    1,0,1,
    0,0,0),3,3,byrow=TRUE)

library("igraph")
G <- graph.adjacency(adj)

节点 0 和 1 之间的边是双向的(实际上不是,它是两条边,只是看起来像双向边,因为它们是直的):

plot(G)

要改变这一点,我们可以使用边缘列表:

E <- t(apply(get.edgelist(G),1,sort))

E(G)$curved <- 0
E(G)[duplicated(E) | duplicated(E,fromLast =TRUE)]$curved <- 0.2

plot(G)
<小时/>

另一个选项是我的包,这是默认行为:

library("qgraph")
qgraph(adj)

可以使用双向参数来抑制。

关于R中igraph中的R倒数边,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5711540/

相关文章:

algorithm - 中国 postman 问题的变体

C++自定义文本代码输入解析器

c++ - 删除单向链表中特定数值范围之外的节点

cassandra - Cassandra 新手,无法理解复制拓扑

javascript - 滴答声开始复制缩放 d3js

Java 链接列表实现(来自 AbstractList)在 Collections.sort 上给出 nullPointerException

R:使用 RGDAL 和 RASTER 包时抛出错误

r - 使用 dplyr 对数据框中的中位数进行分组

r - Caret 包中的预测函数给出错误

R:ape/phylobase:无法将超度量、二叉树转换为 hclust 对象(警告消息)