ChIPseeker 饼图图层覆盖问题

参考:

「r<-包|ggplot2|grid」ggplotify——连接各类R图形
R神包export的使用

缘由;

最近使用ChIPseeker 对peak进行了注释,画一个注释结果分布图,结果发现画pie 图,右边legend 被覆盖了;但是画bar 图一切正常。以为直接将画布拉宽就行,但没有变化。。。

image.png
  • code
library(ChIPseeker)
library(org.Hs.eg.db)
library(TxDb.Hsapiens.UCSC.hg38.knownGene)
library(clusterProfiler)
library(VennDiagram)
library(stringi)

txdb <- TxDb.Hsapiens.UCSC.hg38.knownGene
# devtools::install_github("tomwenseleers/export")
library(export)
library(ggplotify)




setwd("E:\\单细胞\\HZAU_scChIP\\测试CUT&Tag\\Fig5_peak注释结果")
##
peak <- readPeakFile("ENCFF465EGH.bed")
# covplot(peak, chr = c("chr1", "chr2"))
peakAnno <- annotatePeak(peak, tssRegion = c(-3000, 3000), TxDb = txdb, annoDb="org.Hs.eg.db")

## 基础pie
plotAnnoPie(peakAnno)
## 转换成ppt
graph2ppt(file="effect plot.pptx", width=7, height=5)
## 转换成ggplot 
p1 <- as.ggplot(~plotAnnoPie(peakAnno))
p1

实践:

1.发现画bar 图一切正常,并且是一个ggplot2 对象,可以直接修改主题;pie 使用的pie 函数画的,基础绘图。https://github.com/YuLab-SMU/ChIPseeker/blob/master/R/plotAnno.R

  • 首先我们画ggplot2 时候,画板面积太小,可能导致文字叠加问题,手动调整大小就可以;基础语法的pie 图,我们拉宽画布,查看效果,还是存在叠加想象


    image.png
image.png
  • 怎么让它显示正常呢,可以拉宽画布,在运行一次饼图函数。plotAnnoPie(peakAnno)
    image.png

2.尝试用ggplotify 包解决问题

  • 我对基础语法,理解不深刻。运行后出现报错


    image.png
  • 如何需要转换成ggplot2 语法,可以这样操作

p1 <- as.ggplot(~plotAnnoPie(peakAnno))
p1+ theme_bw()
image.png

3.export 包使用

  • 对于图例和饼图存在叠加情况,用基因语法画图,及时导出为ppt,还是无法显示被覆盖区间的内容。可能是ggplot 和 基础语法 画图差异。
  • 但是导出ppt ,取消组合,日常修图可以胜任的。


    image.png
image.png

思考

  • ggplotify 可以将base plot 转换成ggplot 对象。as.ggplot(~plotAnnoPie(peakAnno)),要加上~波浪号
  • export 转换成ppt ,完成日常修图
  • ChIPseeker里面plotAnnoPie 基础语法绘图;plotAnnoBar 使用ggplot 语法绘图

欢迎大家评论交流~😀

©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容