使igraph更加清晰易读

use*_*211 4 r igraph network-analysis

我有一个有69个顶点的有向图,如下所示。它是使用igraph软件包绘制的:

library(igraph)
ig <- graph.adjacency(data, mode="directed", weighted=TRUE) 
plot(ig)
Run Code Online (Sandbox Code Playgroud)

我正在寻求实现以下两点:

(a)将顶点隔开,并可能加长边缘,使其更易于阅读

(b)实际上,我的标签更长。是否可以使顶点变大而使文本变小以适应这个问题。

有任何想法吗?

这是我的数据:https : //www.dropbox.com/s/rtedrd1x1duqllj/data.Rdata?dl=0

图

hrb*_*str 8

所有参数绝对可以高度自定义。我用状态名称代替了顶点标签:

# this ensures the starting random position is the same
# for the layouts that use a random starting position
set.seed(1492) 

l <- layout.fruchterman.reingold(ig, niter=5000, area=vcount(ig)^4*10)

plot(ig, layout=l, 
     edge.arrow.size=0.5, 
     vertex.label.cex=0.75, 
     vertex.label.family="Helvetica",
     vertex.label.font=2,
     vertex.shape="circle", 
     vertex.size=1, 
     vertex.label.color="black", 
     edge.width=0.5)
Run Code Online (Sandbox Code Playgroud)

在此处输入图片说明

您会花一些时间阅读help("igraph.plotting")help("layout")

  • @hrbrmstr:很抱歉提出这个老话题,但由于版本 0.8 `igraph` 已弃用,然后删除了 `area` 属性,我认为它允许节点之间有更多空间(?)。你知道“area”的任何替代品吗? (3认同)