360SDN.COM

R语言绘制网络图

来源:  2017-07-28 13:36:12    评论:0点击:

网络图(Network planning)是一种图解模型,形状如同网络,故称为网络图。网络图是由作业(箭线)、事件(又称节点)和路线三个因素组成的。

> library(igraph)#首次使用者需先安装此包

> aa<-graph(c(1,2,2,3,2,4,1,4,5,5,3,6))

> str(aa)#查看属性,对象之间的结构

IGRAPH D--- 6 6 -- 

+ edges:

[1] 1->2 2->3 2->4 1->4 5->5 3->6

> plot(aa)#绘制有方向图

> plot(bb,vertex.label=NA)#不画标签

##每个节点的位置并不是固定不变的,可以通过设置随机数种子来改变

> set.seed(227)

> plot(aa)

> library(gcookbook)#以此程序包中的madmen2数据集为例

> dim(madmen2)#查看数据维度

[1] 87  2

> head(madmen2)

                 Name1        Name2

1          Abe Drexler  Peggy Olson

2              Allison   Don Draper

3          Arthur Case Betty Draper

4 Bellhop in Baltimore   Sal Romano

5     Bethany Van Nuys   Don Draper

6         Betty Draper   Don Draper

> p<-graph.data.frame(madmen2,directed=TRUE)

> par(mar=c(0,0,0,0))#移除多余的空白边

 #绘制出有方向图

>plot(p,layout=layout.fruchterman.reingold,vertex.size=8,edge.arrow.size=0.5,vertex.label=NA)

 #绘制无方向图

> dim(madmen)#查看数据维度

[1] 39  2

> head(madmen)#数据比madmen2少

         Name1            Name2

1 Betty Draper    Henry Francis

2 Betty Draper       Random guy

3   Don Draper          Allison

4   Don Draper Bethany Van Nuys

5   Don Draper     Betty Draper

6   Don Draper   Bobbie Barrett

> p1<-graph.data.frame(madmen2,directed=FALSE)

> par(mar=c(0,0,0,0))#移除多余的空白边

> plot(p1,layout=layout.circle,vertex.size=8,vertex.label=NA)

 

 #添加标签,具体参数还需不断尝试,调整合适

> plot(p,layout=layout.fruchterman.reingold,#绘制形状

+ vertex.size=8,#调节节点大小

+ edge.arrow.size=0.5,

+ vertex.label=V(p)$name,

+ vertex.label.cex=0.8,

+ vertex.label.dist=0.4,

+ vertex.label.color="black")

 


 

为您推荐

友情链接 |九搜汽车网 |手机ok生活信息网|ok生活信息网|ok微生活
 Powered by www.360SDN.COM   京ICP备11022651号-4 © 2012-2016 版权