本文介绍三种基于ggplot2包可视化网络数据的方法,以便于读者进一步掌握ggplot2的图形语法,并基于该语法可视化网络数据。
首先我们需要加载和安装相关的包。
安装包:
install.packages(“GGally”)
install.packages(“network”)
install.packages(“geomnet”)
install.packages(“ggnetwork”)
install.packages(“ggplot2”)
加载包:
library(ggplot2)
library(GGally)
library(geomnet)
library(ggnetwork)
library(“network”)
加载数据
data(blood, package='geomnet')#该数据主要展示了不同血型间是否可以捐献的网络结果
(1)基于ggnet2绘制网络数据
set.seed(12252016)
ggnet2(network(blood$edge[,1:2],directed=TRUE), mode=’circle’, size=15,
label=T, arrow.size=10, arrow.gap=0.05, vjust=0.5, node.color=’darkred’,
label.color=’grey80’)
(2)基于geomnet绘制网络数据
set.seed(12252016)
ggplot(data=blood$edges, aes(from_id=from, to_id=to))+
geom_net(colour=”darkred”, layout.alg=’circle’,
size=15,labelon=TRUE, vjust=0.5, labelcolour=’grey80’,arrowsize=1.5,
linewidth=0.5, arrowgap=0.05, ecolour=’grey40’, selfloops=TRUE,directed=T)+theme_net()
(3)基于ggnetwork绘制网络数据
set.seed(12252016)
ggplot(ggnetwork(network(blood$edges[,1:2]),layout=’circle’, arrow.gap=0.05),aes(x,y,xend=xend,yend=yend))+
geom_edges(color=’grey50’, arrow=arrow(length=unit(10,’pt’),type=’closed’))+
geom_nodes(size=15,color=’darkred’)+
geom_nodetext(aes(label=vertex.names),color=’grey80’)+
theme_blank()
欢迎大家加入EasyCharts-QQ群
联系客服