以下是Igraph包绘制网络图的小例子。

1.基础网络图绘制;

library(igraph)
​
# 创建数据框
links=data.frame(source=c("A","A", "A", "A", "A","J", "B", "B", "C", "C", "D","I"),target=c("B","B", "C", "D", "J","A","E", "F", "G", "H", "I","I"))
​
# 将数据框转变为igraph可用的对象
network <- graph_from_data_frame(d=links, directed=F)
​
#计算每个节点的数量
deg <- degree(network, mode="all")
​
# 绘图
plot(network, vertex.size=deg*6, vertex.color=rgb(0.1,0.7,0.8,0.5) )

​2.将变量映射到network中的节点特性;

library(igraph)
​
# 创建数据框:links提供人与人之间的节点,nodes提供与人相关的特性
links <- data.frame(source=c("A","A", "A", "A", "A","J", "B", "B", "C", "C", "D","I"),target=c("B","B", "C", "D", "J","A","E", "F", "G", "H", "I","I"),importance=(sample(1:4, 12, replace=T))
)
nodes <- data.frame(name=LETTERS[1:10],carac=c( rep("young",3),rep("adult",2), rep("old",5))
)
​
# 将数据框转变为igraph可用的对象
network <- graph_from_data_frame(d=links, vertices=nodes, directed=F)
​
# 调用RColorBrewer调色板对应以上3种向量
library(RColorBrewer)
coul  <- brewer.pal(3, "Set1")
​
#创建一个矢量颜色
my_color <- coul[as.numeric(as.factor(V(network)$carac))]
​
# 绘图
plot(network, vertex.color=my_color)
​
# 添加图例说明
legend("bottomleft", legend=levels(as.factor(V(network)$carac))  , col = coul , bty = "n", pch=20 , pt.cex = 3, cex = 1.5, text.col=coul , horiz = FALSE, inset = c(0.1, 0.1))

3.更多局部样式的network;

  library(igraph)# 模拟数据集data <- matrix(sample(0:1, 400, replace=TRUE, prob=c(0.8,0.2)), nrow=20)network <- graph_from_adjacency_matrix(data , mode='undirected', diag=F )# 绘图par(mfrow=c(2,2), mar=c(1,1,1,1))plot(network, layout=layout.sphere, main="sphere")plot(network, layout=layout.circle, main="circle")plot(network, layout=layout.random, main="random")plot(network, layout=layout.fruchterman.reingold, main="fruchterman.reingold")

关注“作图帮”公众号,免费分享绘图代码与示例数据~

Igraph包绘制network相关推荐

  1. 利用igraph包绘制网络图

    本文是复杂网络课的一个小作业,主要学习如何导入图数据以及如何利用igraph包绘制网络图. 导入边数据和节点数据 这里主要是将边数据和节点数据分别导入,再利用igraph包中的graph_from_d ...

  2. R语言中的igraph包绘制网络图

    本文转自网络. R语言中的igraph包可以很方便地画出网络图,在社交关系分析等领域发挥重要作用,下面介绍包中一个重要的函数graph_from_data_frame(). graph_from_da ...

  3. R语言使用igraph包进行网络(network)可视化实战

    R语言使用igraph包进行网络(network)可视化实战 目录 R语言使用igraph包进行网络(network)可视化实战 #包的安装和导入

  4. R语言使用igraph包进行网络(network)可视化实战:将变量映射到网络节点(vertex)、将变量映射到网络的边(edge)

    R语言使用igraph包进行网络(network)可视化实战:将变量映射到网络节点(vertex).将变量映射到网络的边(edge) 目录

  5. R语言可视化学习笔记之ggridges包绘制山峦图

    作者:严涛 浙江大学作物遗传育种在读研究生(生物信息学方向)伪码农,R语言爱好者,爱开源. 严涛老师的绘图教程还有: gganimate |诺奖文章里面的动图绘制教程来了!! ggplot2学习笔记之 ...

  6. 采用igraph包分析网络数据

    欢迎关注微信公众号<生信修炼手册>! 对于网络的可视化和数据挖掘,有很多图形界面的软件可供选择,比如cytoscape, gephi 等等,这些软件使用方便,操作简单,功能的强大,但是同时 ...

  7. R语言中igraph包的使用(邻接矩阵)

    先导入igraph包: library(igraph) graph包最简单的用法就是graph方法,两句代码就完成绘制如下所示,1的loop表示为(1,1),1和2之间有3条edge,表示为(1,2, ...

  8. ComplexHeatmap包绘制热图(二)

    前面我介绍了如何利用ComplexHeatmap包绘制简单的热图,现在我们绘制一个稍微复杂一些的热图 首先还是配置数据 data=matrix(rnorm(100),nrow=10) colnames ...

  9. 使用ComplexHeatmap包绘制个性化热图

    文章目录 使用ComplexHeatmap包绘制个性化热图 检测安装加载包 创建测试数据集 一行命令绘图 调参美化 猜你喜欢 写在后面 使用ComplexHeatmap包绘制个性化热图 作者:刘梦瑶 ...

最新文章

  1. 新能源汽车市场发展趋势
  2. IListT和ListT区别
  3. python代码教程-【Python】Python3纯代码极简教程
  4. 推荐 10 个你没见过的 VsCode 的高效开源神器,YYDS
  5. python函数的作用降低编程复杂度_Python函数式编程
  6. WinCE下监视设备插拔的参考代码
  7. 什么?!“路由器”也会做信息抽取了?
  8. Tensor的填充与复制
  9. Chrome扩展推荐
  10. 计算机感染冲击波,CIH、爱虫、冲击波、熊猫烧香,对这4种网络病毒你了解多少?...
  11. HTC HD2解锁详细教程
  12. JQueryUI学习文档
  13. uboot如何驱动SD卡
  14. Unity 本地化比较实用的实现方案
  15. 如何用计算机表白男神,女生表白男生的方法 教你如何正确向男神表白
  16. ffmpeg批量m4a转mp3
  17. bind server.c
  18. Flowplayer基于视频流的免费web视频播放器
  19. 岁月温柔-2 又住院了,祈祷早日康复
  20. Apple Logic Pro X 10.7 For MacOS 苹果音乐制作宿主软件

热门文章

  1. 这款笔记本写代码真爽,包邮送一台!
  2. final关键字的这8个小细节,你get到几个?
  3. 20 亿个数字在 4G 内存中如何去重排序:快来试一试 BitMap
  4. 我们是如何陷入贫穷与忙碌的?
  5. 阿里巴巴领导抱怨家里有矿的应届生不好带!聪明效率高,但从不加班,也不做职业规划!画饼谈心也没用,怎么办?...
  6. 送100本书!涵盖Java 、大数据、推荐系统、机器学习、黑客、数据库、手游、少儿编程等!免费包邮!...
  7. 建议收藏这7个软件,自用良心推荐!
  8. 怎么用leangoo做需求管理及规划?(产品Backlog、用户故事)
  9. PTA—输出全排列 (20分) 递归回溯思想
  10. 一次打流过程的优化反思(iperf3的灵活运用)