输入数据格式

pathway = read.table("kegg.result",header=T,sep="\t")

pp = ggplot(pathway,aes(richFactor,Pathway)) #Pathwy是ID,richFactor是富集的基因数目除以背景的基因数目
# 改变点的大小
pp + geom_point(aes(size=R0vsR3)) # 以基因的数目表示点大小 pbubble = pp + geom_point(aes(size=R0vsR3,color=-1*log10(Qvalue))) # 显著性表示颜色
# 自定义渐变颜色
pbubble + scale_colour_gradient(low="green",high="red") # 绘制pathway富集散点图
pr = pbubble + scale_colour_gradient(low="green",high="red") + labs(color=expression(-log[10](Qvalue)),size="Gene number",x="Rich factor",y="Pathway name",title="Top20 of pathway enrichment")
# 改变图片的样式(主题)去除背景色
pr + theme_bw()
#去除网格线
p_remove_grid <- pr +
theme(panel.grid.major = element_blank(), panel.grid.minor = element_blank())
#网格线颜色
panel.grid=element_line(color='grey')
首先需要安装ggplot2
library(ggplot2) #导入ggplot2
x <- read.table("c:/Users/yueyao/Desktop/pathwayenrichment.txt",head = T, sep = "\t") #读入文件,我的文本文件在桌面
pdf(file="c:/Users/yueyao/Desktop/pathway_enrichment.pdf",width=10,height=10)#生成输出文件,双引号里面为路径及文件名,可自行设置
png(file="c:/Users/yueyao/Desktop/pathway_enrichment.png",width=800,height=800)
p <- ggplot(x,aes(x$Rich.Factor,x$Pathway))#作图利用的两列数据
map = p + geom_point(aes(size=x$Genes,colour=x$Qvalue))+theme(axis.text=element_text(color='black'),axis.text.y=element_text(size=14),axis.text.x=element_text(size=14),panel.background=element_rect(fill='transparent'),panel.grid=element_line(color='grey'),panel.border=element_rect(fill='transparent',color='black'),axis.title=element_text(size=16)) +labs(color="Qvalue",size="Gene number",x="Rich factor",y="Pathway name",title="Top20 of pathway enrichment")
map
dev.off()

输出图片

KEGG富集分析散点图.md的更多相关文章

  1. 【R】clusterProfiler的GO/KEGG富集分析用法小结

    前言 关于clusterProfiler这个R包就不介绍了,网红教授宣传得很成功,功能也比较强大,主要是做GO和KEGG的功能富集及其可视化.简单总结下用法,以后用时可直接找来用. 首先考虑一个问题: ...

  2. kegg富集分析之:KEGGREST包(9大功能)

    这个包依赖极有可能是这个:https://www.kegg.jp/kegg/docs/keggapi.html ,如果可以看懂会很好理解 由于KEGG数据库分享数据的策略改变,因此KEGG.db包不在 ...

  3. DAVID 进行 GO/KEGG 功能富集分析

    何为功能富集分析? 功能富集分析是将基因或者蛋白列表分成多个部分,即将一堆基因进行分类,而这里的分类标准往往是按照基因的功能来限定的.换句话说,就是把一个基因列表中,具有相似功能的基因放到一起,并和生 ...

  4. python scipy包进行GO富集分析p值计算

    最近总是有需要单独对某一个类型的通路进行超几何分布的p值计算,这里记录一下python包的计算方法 使用scipy的stat里面的hypergeom.sf方法进行富集分析的p值计算 hsaxxxxx ...

  5. GO富集分析 信号通路

    基因富集分析是分析基因表达信息的一种方法,富集是指将基因按照先验知识,也就是基因组注释信息进行分类. 信号通路是指能将细胞外的分子信号经细胞膜传入细胞内发挥效应的一系列酶促反应通路.这些细胞外的分子信 ...

  6. 富集分析DAVID、Metascape、Enrichr、ClueGO

    前言 一般我们挑出一堆感兴趣的基因想临时看看它们的功能,需要做个富集分析.虽然公司买了最新版的数据库,如KEGG,但在集群跑下来嫌麻烦.这时网页在线或者本地化工具派上用场了. DAVID DAVID地 ...

  7. 基因探针富集分析(GSEA)& GO & pathway

    http://blog.sina.com.cn/s/blog_4c1f21000100utyx.html GO是Gene Ontology的简称,是生物学家为了衡量基因的功能而而发起的一个项目,从分子 ...

  8. 利用GSEA对基因表达数据做富集分析

      image Gene Set Enrichment Analysis (GSEA) is a computational method that determines whether an a p ...

  9. R: 修改镜像、bioconductor安装及go基因富集分析

    1.安装bioconductor及go分析涉及的相关包 source("http://bioconductor.org/biocLite.R") options(BioC_mirr ...

随机推荐

  1. 一个 Object.assign 的误解

    mozilla中对 Object.assign 的解释如下地址: mozilla 其中有说到 注意, Object.assign 会跳过那些值为 null 或 undefined 的源对象. 一直以为 ...

  2. Makefile(二)

    VERSION = SOURCE = $(wildcard ./*.cpp) OBJ = $(patsubst %.cpp,%.o,$(SOURCE)) INCLUDE = -I /usr/inclu ...

  3. (5)Go数组

    数组 数组是同一种数据类型元素的集合. 在Go语言中,数组从声明时就确定,使用时可以修改数组成员,但是数组大小不可变化. 基本语法: // 定义一个长度为3元素类型为int的数组a var a [3] ...

  4. JS 中的prototype、__proto__与constructor

    我们需要牢记两点: ①__proto__和constructor属性是对象所独有的: ② prototype属性是函数所独有的,因为函数也是一种对象,所以函数也拥有__proto__和construc ...

  5. 【Python 代码】生成hdf5文件

    import random from PIL import Image import numpy as np import os import h5py from PIL import Image L ...

  6. Thingsboard Gateway开发环境

    源码下载地址:https://github.com/thingsboard/thingsboard-gateway 国内大神源码地址:https://github.com/guodaxia103/th ...

  7. JAVA日志工具类

    package com.ming.util; import java.io.File; import java.io.FileWriter; import java.io.IOException; i ...

  8. Oracle备份的几种方式

    这里使用Oracle 12C来大概演示说明一下rman的基本用法,这里不会深入讨论,因为本人也只是刚刚才接触,只是结合了网上的一些文章以及自己的实践来总结并拿出来大家学习,谢谢 目录 一.关于备份与恢 ...

  9. 第2课第3节_Java面向对象编程_继承性_P【学习笔记】

    摘要:韦东山android视频学习笔记  面向对象程序的三大特性之继承性:继承性的主要作用就是复用代码.继承性也有一定的限制,如图一 图一 1.我们在第2课第2节_Java面向对象编程_封装性_P 中 ...

  10. MATLAB中 H(b > g) = 2*pi - H(b > g); 作何解

    H(b > g) = 2*pi - H(b > g); %b > g 会得到一个逻辑矩阵,如b=[7,5,6] ;g=[1,2,8],那么b>g会得到[1,1,0]: b< ...