igraph对象可以有定向边和无向边吗?

igraph对象可以有定向边和无向边吗?,r,graph,igraph,ggraph,R,Graph,Igraph,Ggraph,我试图使用igraph/ggraph绘制一个网络,其中一些边是有方向的,而另一些边不是 我的边缘主义者的一个小例子。在这里,蛋白质位点边缘是我想要表示为无向的,磷酸化边缘是定向的 df <- data.frame( stringsAsFactors = FALSE, from = c("RPS6KA3", "RPS6KA3", "RPS6KA3", "RPS6KA3", &quo

我试图使用igraph/ggraph绘制一个网络,其中一些边是有方向的,而另一些边不是

我的边缘主义者的一个小例子。在这里,蛋白质位点边缘是我想要表示为无向的,磷酸化边缘是定向的

df <- data.frame(
  stringsAsFactors = FALSE,
              from = c("RPS6KA3", "RPS6KA3", "RPS6KA3", "RPS6KA3", "RPS6KA3"),
                to = c("RPS6KA3_Y529-p",
                       "RPS6KA3_S227-p","RPS6KA3_S369-p","RPS6KA3_T577-p","ATF4"),
            action = c("protein-site","protein-site",
                       "protein-site","protein-site","phosphorylation")
)

df如果您愿意使用
igraph
绘图,您可以按照指示导入边列表,然后使用
edge.arrow.mode

nw <- graph_from_data_frame(df, directed = T)


plot(nw)


我不确定
ggraph
是否支持类似的功能。我认为可以更改箭头的大小,并将无向边设置为0。这不起作用,因为箭头继承了边缘其余部分的样式。

这仅仅是一个可视化问题吗?或者你想用这样的图表做些什么?
nw <- graph_from_data_frame(df, directed = T)


plot(nw)
plot(nw,
     edge.arrow.mode = ifelse(E(nw)$action=="protein-site", "-", ">"))