生信分析

R语言GOplot包画弦图如何准备自己的数据~写了一个简单的py

2021-06-07  本文已影响0人  小明的数据分析笔记本

GOplot那个R语言包画弦图展示GO富集分析的结果,图还挺漂亮的,但是如果是自己的数据到最终他的画图需要的输入数据还挺麻烦的,我这边写了一个python脚本,希望可以简化画图数据的准备过程,脚本写的比较丑,但是凑合着能用

你自己需要准备的数据是

运行脚本

python .\prepare_input_df_for_R_GOplot_GOchord.py .\genes.txt .\process.txt .\GO_enrich_result.tsv a b 3 4 output-1.txt

这样就获得了output-1.txt这个文件,接下来是R语言里的代码

df<-read.csv("D:/Jupyter/GOplot/example/output-1.txt",
             header = T,
             sep="\t",
             row.names = 1,
             check.names = F)

head(df)
df<-df[,1:dim(df)[2]-1]

首先是读入数据,python脚本输出的文件是制表符分隔的
结尾处有一列空值,python里不知道如何删掉,这里读入数据以后再删掉吧

which(rowSums(df) == 0)

数据每行都是0,和1,还得检查一下有没有哪一行全是0,如果全是0这一行得删掉

df1<-read.csv("D:/Jupyter/GOplot/example/geneslogfc.csv")
df$logFC<-df1$logFC

读取带数值的基因文件,这个基因文件的顺序需要和感兴趣的基因那个文件完全保持一致

最后就是画图了

library(GOplot)
library(ggplot2)
p1<-GOChord(as.matrix(df), 
        space = 0.02, 
        gene.order = 'logFC', 
        gene.space = 0.25, gene.size = 5)

ggsave(filename = "GOplot_example/p3.pdf",
       p1,
       width = 15,height = 15)
image.png
后记

python里是可以调用R语言的,好好研究一些,看能不能直接一个python脚本出图,那样就非常方便了

欢迎大家关注我的公众号

小明的数据分析笔记本

小明的数据分析笔记本 公众号 主要分享:1、R语言和python做数据分析和数据可视化的简单小例子;2、园艺植物相关转录组学、基因组学、群体遗传学文献阅读笔记;3、生物信息学入门学习资料及自己的学习笔记!

上一篇 下一篇

猜你喜欢

热点阅读