一、加载相关包
install.packages("igraph")
install.package("xlsx")
library(igraph)
library(xlsx)
二、导入文件
网络图由点和边组成,在本例子中点都是没有差别的,所以不单独引入点文件,做的是无向图
test= read.xlsx('E:/test.xlsx',1)
g <- graph_from_data_frame(test, directed=F,)
三、美化图片并输出
V代表点,V$label是点的标签,也就是该点名称,E代表边,layout是样式,本例中用第三列的数据(列名为weight)对边赋予权重。
V(g)$size=20
V(g)$color=white
V(g)$label.cex=0.7
V(g)$label.color="black"
E(g)$color="gary"
plot(g, layout = layout.circle,edge.width=E(g)$weight)
四、遗留问题
不知道怎么把线搞直(嘤嘤嘤。。。
【更新】
我好像知道线为什么不直了……
数据中存在A-B和B-A两行数据,就会导致AB之间有两条连线,为了不重叠,就会变弯……