利用Gephi软件绘制网络图

1. 生成物种相关性矩阵

此步骤需要在R语言环境下运行,依赖psych包,输入文件为典型的OTU表或属水平丰度矩阵,示例如下。

利用Gephi软件绘制网络图_javascript

输入文件FH_CK.txt文件格式, CK为空白对照的5个重复;FH为处理组的5个重复;G1-G148为丰度大于0.2%的属。

# 安装需要的包
install.packages("psych")

# 加载包
library(psych)

# 读取otu-sample矩阵,行为sample,列为otu
otu=read.table("FH_CK.txt", head=T, row.names=1)

# 计算OTU间两两相关系数矩阵
# 数据量小时可以用psych包corr.test求相关性矩阵,数据量大时,可应用WGCNA中corAndPvalue, 但p值需要借助其他函数矫正
occor = corr.test(otu,use="pairwise",method="spearman",adjust="fdr",alpha=0.05)
occor.r = occor$r # 取相关性矩阵R值
occor.p = occor$p # 取相关性矩阵p值

# 确定物种间存在相互作用关系的阈值,将相关性R矩阵内不符合的数据转换为0
occor.r[occor.p>0.05|abs(occor.r)<0.6] = 0

# 将occor.r保存为csv文件
write.csv(occor.r,file="FH_CK_0.05_occor.csv")

2. Gephi生成点、边文件

从官网https://gephi.org/下载安装Gephi 0.9.2

打开Gephi 0.9.2,点击“文件-打开”,选择“FH_CK_0.05_occor.csv”文件打开。

利用Gephi软件绘制网络图_开发语言_02

点击“下一步”

利用Gephi软件绘制网络图_语言环境_03

图的类型,选择“无向的”

利用Gephi软件绘制网络图_电子表格_04

点击确定后,出现以下页面:

利用Gephi软件绘制网络图_开发语言_05

点击“数据资料”,出现节点和边的信息,点击数据表格左上角“节点”,然后点击“输出表格”,输出点文件。点击“边”,然后点击“输出表格”,输出边文件。

利用Gephi软件绘制网络图_前端_06

3. 点、边文件注释

打开点文件,可添加物种分类信息等

利用Gephi软件绘制网络图_前端_07

打开边文件,可添加正负属性等:

利用Gephi软件绘制网络图_语言环境_08

4. 网络点、边美化

打开Gephi文件,点击“文件—导入电子表格”,导入结点文件

利用Gephi软件绘制网络图_开发语言_09

图的类型,选择“无向的”

利用Gephi软件绘制网络图_电子表格_10

打开Gephi文件,点击“文件—导入电子表格”,导入边文件

利用Gephi软件绘制网络图_javascript_11

选择“Append to existing workspace”

利用Gephi软件绘制网络图_javascript_12

在“概览”界面的“布局”中,选择“Fruchterman Reingold”,点击“运行”,待图形稳定后,点击“停止”

利用Gephi软件绘制网络图_开发语言_13

在“外观”中,点击“节点”,“颜色”,“Partition”,选择”Phylum”,点击应用。即以颜色区别不同节点的门分类

利用Gephi软件绘制网络图_语言环境_14

在“外观”中,点击“节点”,“大小”,“Ranking”,选择”度”,点击应用。即以不同度区别不同节点的大小。如果看不到大小变化,调整最大尺寸,如4变为30

利用Gephi软件绘制网络图_javascript_15

在“外观”中,点击“边”,“颜色”,“Partition”,,选择”pn”,点击应用。即以颜色区分边的正负。

利用Gephi软件绘制网络图_前端_16

5. 网络属性、预览和标签

在网络图右侧,统计选项卡中,点击“运行”,可计算网络和节点的参数:

利用Gephi软件绘制网络图_语言环境_17

在“预览”界面,点击“刷新”,可显示最终的图形

利用Gephi软件绘制网络图_javascript_18

可在“预览设置”中选择“显示标签”,如下图所示

利用Gephi软件绘制网络图_开发语言_19

参考文献

  1. Gephi快速入门指南 https://wenku.baidu.com/view/29328a9f19e8b8f67d1cb92d.html
  2. Gephi 入门使用
  3. Gephi官方帮助 https://gephi.org/users/
  4. 一文学会网络分析——Co-occurrence网络图在R中的实现