Cytoscape绘制相关网络图

导读

用R软件corr.test函数进行两组数组的相关性分析,用Cytoscape绘制相关网络图。

一、输入数据

代谢数据:metabo.txt

示例数据

16S数据:genus.txt

示例数据

二、R分析相关性

计算genus和metabo相关性

利用psych函数包中的corr.test函数计算两组数据之间的相关性
参数说明:
pairwise: 样品配对剔除
use: 相关性计算方法pearson/spearman/kendall
adjust: 矫正方法
ci & alpha: 置信区间
minlength: 缩写长度

# 加载函数包
library(psych)

# 数据导入
genus=read.table("genus.txt", row.names=1, header=T, sep="\t")
metabo=read.table("metabo.txt", row.names=1, header=T, sep="\t")

# 计算相关性: print & data.frame调整结果格式
result_pair=data.frame(print(corr.test(genus, metabo, use="pairwise", method="spearman", adjust="fdr", alpha=.05, ci=TRUE, minlength=10), short=FALSE))

# 查看结果
head(result_pair)

三、整理分析结果

pair=rownames(result_pair)  # 行名
result_pair2=data.frame(result_pair[, c(2, 4)], pair)  # 提取信息

# P值排序
result_pair3=data.frame(result_pair2[order(result_pair2[,"raw.p"], decreasing=F),])

# 统计显著相关的数量
n=0
for(i in 1:nrow(result_pair3))
{
    if(result_pair3[i, 2]<=0.05)
    {
        n=n+1    
    }
}
# n=71

# 提取显著相关结果
result_pair4=result_pair3[result_pair3$raw.p<=0.05, ]

# 保存提取的结果
write.table(result_pair4, file="corr.txt", sep="\t", row.names=F, quote=F)

查看结果:相关性大于在[-1, 1]之间,绝对值越接近1表示相关性越强

corr.txt

四、准备Cytoscape输入文件

相关数据:input_network.txt

用vlookup把genus和keggID换成具体的名称;正相关标记为pos,负相关标记为neg,r值去掉正负。

分组数据:input_group.txt

五、Cytoscape数据导入

  • 1 打开cytoscape3.5.1
  • 2 点击With Empty Network
  • 3 输入network name,点击OK
图片.png
  • 4 导入相关数据
  • 5 以genus为source node,kegg为target,点击OK
雏形
  • 6 导入分组文件:打开,OK

六、Cytoscape图形设置

1 设置图形大小、线条粗细

显著相关越多,图形越大;相关性越强线条越粗

选中所有点
依次点击
依次点击,X掉最后的窗口
依次点击
依次选择、点击
搞定图形大小、线条粗细

2 设置图形颜色

3 设置线条颜色

七、保存结果

保存:整个工作

保存:pdf或png

结果示例

参考:
微生物研究必备:Cytoscape绘制网络图(一)
微生物研究必备:Cytoscape绘制网络图(二)
微生物研究必备:Cytoscape绘制网络图(三)
微生物研究必备:Cytoscape绘制网络图(四)
微生物研究必备:Cytoscape绘制网络图(五)

\color{green}{😀😀原创文章,码字不易,转载请注明出处😀😀}

最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容