R语言用igraph绘制网络图可视化

最近我们被客户要求撰写关于网络图可视化的研究报告,包括一些图形和统计输出。

 相关视频:复杂网络分析CNA简介与R语言对婚礼数据聚类(社区检测)和可视化|数据分享

复杂网络分析CNA简介与R语言对婚礼数据聚类(社区检测)和可视化

这篇文章假定你已经知道如何用igraph库建立一个基本的网络图。

基本上,igraph允许将几种类型的输入转化为一个图形对象,可以使用plot()函数绘制,如下所示。

# 创建数据
network <- graph(data , mode='undirected')

# 默认网络

plot(network)
 

自定义节点功能


节点可以修改几个参数,这些参数都以顶点开始。顶点是igraph语言中的一个节点。主要选项在下面的代码中解释。


    vertex.frame.color = "green",            # 节点边界颜色
    vertex.shape=c("circle","square"),             # "none", "circle", "square", "rectangle", "crectangle", "vrectangle", "pie", "raster", or "sphere "之一
    vertex.size=c(15:24),                          # 节点的大小(默认是15)
    vertex.size2=NA,                               # 节点的第二个尺寸(例如,矩形的尺寸
 

自定义标签特征


以vertex.label.开头的选项可以设置label的特征。

    vertex.label.family="Times",                   # 标签的字体(例如:"Times", 
    vertex.label.font=c(1,2,3,4),                  # 字体:1普通,2粗体,3斜体,4粗斜体,5符号
    vertex.label.cex=c(0.5,1,1.5),                 # 字体大小(乘法系数)
    vertex.label.dist=0,                           # 标签和顶点之间的距离
    vertex.label.degree=0 ,                        # 标签相对于顶点的位置(使用π)。

用以edge开头的参数控制edge。

    edge.width=seq(1,10),                        # 边宽度,默认为1
    edge.arrow.size=1,                           # 箭头大小,默认为1
    edge.arrow.width=1,                          # 箭头宽度,默认为1
    edge.lty=c("solid")                           # 线条类型,可以是0或 "空白",1或 "实线",2或 "虚线",3或 "点线"等
 

综合运用


当然,你可以将上述所有选项全部用在同一个图表上。


  • 3
    点赞
  • 20
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值