带igraph的两列二部布局

带igraph的两列二部布局,r,igraph,R,Igraph,我试图绘制一个二部图,但有两列;功能手册规定,布局为二部图时,在简单的两行或两列布局中最小化[s]边交叉。 尝试使用该示例,我只能得到两行图: library(igraph) library(dplyr) # Random bipartite graph inc <- matrix(sample(0:1, 50, replace = TRUE, prob=c(2,1)), 10, 5) g <- graph_from_incidence_matrix(inc) plot(g, lay

我试图绘制一个二部图,但有两列;功能手册规定,布局为二部图时,在简单的两行或两列布局中最小化[s]边交叉。 尝试使用该示例,我只能得到两行图:

library(igraph)
library(dplyr)
# Random bipartite graph
inc <- matrix(sample(0:1, 50, replace = TRUE, prob=c(2,1)), 10, 5)
g <- graph_from_incidence_matrix(inc)
plot(g, layout = layout_as_bipartite,
     vertex.color=c("green","cyan")[V(g)$type+1])

# Two columns
g %>%
  add_layout_(as_bipartite()) %>%
  plot()
看起来布局作为二分体只做行,不做列,但是很容易修改结果布局。布局只是节点的X-Y坐标,所以要从行更改为列,只需切换X和Y即可

LO = layout_as_bipartite(g)
LO = LO[,c(2,1)]
plot(g, layout = LO, vertex.color=c("green","cyan")[V(g)$type+1])
看起来布局作为二分体只做行,不做列,但是很容易修改结果布局。布局只是节点的X-Y坐标,所以要从行更改为列,只需切换X和Y即可

LO = layout_as_bipartite(g)
LO = LO[,c(2,1)]
plot(g, layout = LO, vertex.color=c("green","cyan")[V(g)$type+1])

我发布了一个类似的问题。对于我的数据,我不得不做一些不同的事情,但是当我尝试使用你的方法时,我得到了不正确的维度。不知道你能否回答。感谢you@user5249203对不起,我不是一个闪亮的用户。我有一个类似的问题张贴。对于我的数据,我不得不做一些不同的事情,但是当我尝试使用你的方法时,我得到了不正确的维度。不知道你能否回答。感谢you@user5249203对不起,我不是一个闪亮的用户。