R网络分析:使用igraph构建与可视化网络
学习使用igraph包创建图对象,进行网络分析与可视化。 · 难度:入门 · +15XP
网络分析基础
网络由节点(vertex)和边(edge)组成。igraph是R中强大的网络分析包,支持多种图算法和布局。
1. 创建图
library(igraph)
g <- graph_from_literal(A-B, B-C, C-D, D-A, A-C)
plot(g)2. 从数据框创建图
edges <- data.frame(from = c('A','B','C'), to = c('B','C','A'))
g2 <- graph_from_data_frame(edges, directed = FALSE)
plot(g2)3. 网络基本属性
vcount(g) # 节点数
E(g) # 边列表
degree(g) # 节点度数4. 社区检测
cl <- cluster_fast_greedy(g)
plot(cl, g)5. 网络可视化美化
plot(g, vertex.color = 'lightblue', vertex.size = 30, edge.color = 'gray', main = 'My Network')| 函数 | 说明 |
|---|---|
| graph_from_literal() | 直接创建图 |
| graph_from_data_frame() | 从边列表创建图 |
| degree() | 节点度数 |
| cluster_fast_greedy() | 快速贪婪社区检测 |
练习提示:使用igraph内置数据集karate(空手道俱乐部),进行社区检测并可视化。