• 主页
  • 课程

    关于课程

    • 课程归档
    • 成为一名讲师
    • 讲师信息
    同等学历教学

    同等学历教学

    免费
    阅读更多
  • 特色
    • 展示
    • 关于我们
    • 问答
  • 事件
  • 个性化
  • 博客
  • 联系
  • 站点资源
    有任何问题吗?
    (00) 123 456 789
    weinfoadmin@weinformatics.cn
    注册登录
    恒诺新知
    • 主页
    • 课程

      关于课程

      • 课程归档
      • 成为一名讲师
      • 讲师信息
      同等学历教学

      同等学历教学

      免费
      阅读更多
    • 特色
      • 展示
      • 关于我们
      • 问答
    • 事件
    • 个性化
    • 博客
    • 联系
    • 站点资源

      未分类

      • 首页
      • 博客
      • 未分类
      • ggplot2|绘制GO富集柱形图

      ggplot2|绘制GO富集柱形图

      • 发布者 一览
      • 分类 未分类
      • 日期 2020年3月8日
      • 评论 0评论

      参考:https://mp.weixin.qq.com/s?__biz=MzIyNDI1MzgzOQ==&mid=2650394002&idx=1&sn=bea4c521e3ab400ce43566b6e25e5b74&chksm=f01caf72c76b2664c353625734b86bba86dcc3fa4fc35b0a8805f08919f4f17772b1452b82b3&scene=21#wechat_redirect

      生信分析中经常会得到一些基因,然后做GO富集分析,达到对基因进行注释和分类的目的。

      本文利用R语言的ggplot2包,从头带您绘制可发表级别的GO富集分析结果图。

      一 载入数据集和R包

      利用各种生信工具得到富集分析结果,数据列可能不一致,但关键几列都有。

      
      library(ggplot2)
      data <- read.csv("GO_enrichment_significant.csv",header=TRUE)
      head(data)

      二 对上述GO结果绘制基础bar图

      参照之前ggplot2使用方法,更改geom即可绘制简单的bar图,按照GO_category分组颜色

      
      ggplot(data=data, aes(x=GO_term,y=Num_of_symbols_in_list_in_GO, fill=GO_category)) + geom_bar(stat="identity", width=0.8)

      可看出和文献中的差距较大,体现在以下几个方面:

      A:标题,坐标轴“业余”;

      B:GO_category顺序未按照输入文件,相同GO_category没在一起;

      C:横坐标label太长,重叠在一起。

      三  “细节”调整GO结果bar图

      3.1 坐标轴调整策略

      #将GO_term设定为factor即可按照顺序输出
      GO_term_order=factor(as.integer(rownames(data)),labels=data$GO_term)
      ggplot(data=data, aes(x=GO_term_order,y=Num_of_symbols_in_list_in_GO, fill=GO_category)) + geom_bar(stat="identity", width=0.8) + coord_flip() +  xlab("GO term") + ylab("Num of Genes") + theme_bw()

      好像有一点能看了,尝试其他策略。

      3.2 调整横坐标label策略

      将label调整成一定角度倾斜

      
      COLS <- c("#66C3A5", "#8DA1CB", "#FD8D62")
      ggplot(data=data, aes(x=GO_term_order,y=Num_of_symbols_in_list_in_GO, fill=GO_category)) +
        geom_bar(stat="identity", width=0.8)  + 
        scale_fill_manual(values = COLS) + theme_bw()  +
        xlab("GO term") + ylab("Num of Genes") + labs(title = "The Most Enriched GO Terms")+ theme(axis.text.x=element_text(face = "bold", color="gray50",angle = 70,vjust = 1, hjust = 1 )) 

      嗯 ,标签太长溢出,采取保留GO-term的前三个单词(可以其他策略)后面…代替,可以excel或者R function 解决。

      3.3 调整label长度后绘图

      
      GO_term_order=factor(as.integer(rownames(data)),labels=labels)
      COLS <- c("#66C3A5", "#8DA1CB", "#FD8D62")
      ggplot(data=data, aes(x=GO_term_order,y=Num_of_symbols_in_list_in_GO, fill=GO_category)) +
        geom_bar(stat="identity", width=0.8)  + 
        scale_fill_manual(values = COLS) + theme_bw() +
        xlab("GO term") + ylab("Num of Genes") + labs(title = "The Most Enriched GO Terms")+ theme(axis.text.x=element_text(face = "bold", color="gray50",angle = 70,vjust = 1, hjust = 1 )) 
      

      好了  ,这样好像比较顺眼了,不管什么软件工具得到的GO富集结果,都可以绘图,然后,,,发文章去吧。。。

      请关注“恒诺新知”微信公众号,感谢“R语言“,”数据那些事儿“,”老俊俊的生信笔记“,”冷🈚️思“,“珞珈R”,“生信星球”的支持!

      • 分享:
      作者头像
      一览

      上一篇文章

      ggplot2| 绘制KEGG气泡图
      2020年3月8日

      下一篇文章

      ggplot2|从0开始绘制PCA图
      2020年3月8日

      你可能也喜欢

      2-1675088548
      lncRNA和miRNA生信分析系列讲座免费视频课和课件资源包,干货满满
      30 1月, 2023
      9-1675131201
      如何快速批量修改 Git 提交记录中的用户信息
      26 1月, 2023
      8-1678501786
      肿瘤细胞通过改变CD8+ T细胞中的丙酮酸利用和琥珀酸信号来调控抗肿瘤免疫应答。
      7 12月, 2022

      留言 取消回复

      要发表评论,您必须先登录。

      搜索

      分类

      • R语言
      • TCGA数据挖掘
      • 单细胞RNA-seq测序
      • 在线会议直播预告与回放
      • 数据分析那些事儿分类
      • 未分类
      • 生信星球
      • 老俊俊的生信笔记

      投稿培训

      免费

      alphafold2培训

      免费

      群晖配置培训

      免费

      最新博文

      Nature | 单细胞技术揭示衰老细胞与肌肉再生
      301月2023
      lncRNA和miRNA生信分析系列讲座免费视频课和课件资源包,干货满满
      301月2023
      如何快速批量修改 Git 提交记录中的用户信息
      261月2023
      logo-eduma-the-best-lms-wordpress-theme

      (00) 123 456 789

      weinfoadmin@weinformatics.cn

      恒诺新知

      • 关于我们
      • 博客
      • 联系
      • 成为一名讲师

      链接

      • 课程
      • 事件
      • 展示
      • 问答

      支持

      • 文档
      • 论坛
      • 语言包
      • 发行状态

      推荐

      • iHub汉语代码托管
      • iLAB耗材管理
      • WooCommerce
      • 丁香园论坛

      weinformatics 即 恒诺新知。ICP备案号:粤ICP备19129767号

      • 关于我们
      • 博客
      • 联系
      • 成为一名讲师

      要成为一名讲师吗?

      加入数以千计的演讲者获得100%课时费!

      现在开始

      用你的站点账户登录

      忘记密码?

      还不是会员? 现在注册

      注册新帐户

      已经拥有注册账户? 现在登录

      close
      会员购买 你还没有登录,请先登录
      • ¥99 VIP-1个月
      • ¥199 VIP-半年
      • ¥299 VIP-1年
      在线支付 激活码

      立即支付
      支付宝
      微信支付
      请使用 支付宝 或 微信 扫码支付
      登录
      注册|忘记密码?