美文网首页R
ggplot2一页多图Rmisc-multiplot功能新手排雷

ggplot2一页多图Rmisc-multiplot功能新手排雷

作者: NICE_AGIS | 来源:发表于2020-03-24 21:47 被阅读0次

    哈,三月是适合写简书的月份~
    这只是一篇短的心得,记录自己刚刚遇到的问题,供大家参考。

    背景:

    1. 在用DESeq2做转录组差异基因,有几个关注的marker基因想要画图展示;
    2. 这种情况可以用DESeq2包自带的plotcounts功能,这里我利用这个功能输出数据,后面接ggplot2作图;
    3. 想要把关注的3个基因的表达情况展示在一张图上,尝试了layout( )不成功;
    4. 找教程,安装了Rmisc包,利用multiplot功能,但是操作时遇到了问题。

    详细情况:

    setwd('')
    colData <- read.table('', sep="\t", header=TRUE, row.names=1)
    readscount <- read.table('', sep="\t", header=TRUE, row.names=1)
    condition <- factor(c( ))
    batch <- factor(c())
    library(DESeq2)
    dds <- DESeqDataSetFromMatrix(readscount, colData, design =~ batch + condition)
    dds <- DESeq(dds) #完成dds构建和数据标准化
    
    library(ggplot2)
    library(Rmisc) 
    p1 <- plotCounts(dds,gene="ENSSSCG001",returnData=TRUE) #基因id不便透露,returndata是只返回数据不作图,将数据存储于p1
    pp1 <- ggplot(p1,aes(x=condition,y=count))+ #这里不可直接输出ggplot图形,而是要存储于另一个变量,最后再用multiplot输出,否则就会出错!
      geom_boxplot(notch=F,aes(color=condition)) + 
      scale_y_log10() + ggtitle("GENE1") + xlab("") + ylab("") +
      theme(plot.title=element_text(face="italic"),legend.position="none")+
      theme(panel.grid.major=element_blank(),panel.grid.minor=element_blank())+
      theme(panel.background=element_blank()) +
      theme(axis.line=element_line(color = "black"))
    p2 <- plotCounts(dds,gene="ENSSSCG002",returnData=TRUE) #这里只用两个基因举例
    pp2 <- ggplot(p2,aes(x=condition,y=count))+
      geom_boxplot(notch=F,aes(color=condition)) + 
      scale_y_log10() + ggtitle("GENE2") + xlab("") + ylab("") + 
      theme(plot.title=element_text(face="italic"),legend.position="none")+
      theme(panel.grid.major=element_blank(),panel.grid.minor=element_blank())+
      theme(panel.background=element_blank()) +
      theme(axis.line=element_line(color = "black"))
    multiplot(pp1,pp2,cols = 2) #输出两个图形在一个页面上,左右而不是上下形式。
    

    所以最后我想说,一定要把ggplot图形存起来最后输出,否则会出错。
    这是一个小白问题,但是本着“一定不止我一个人遇到这歌问题”的原则,写出来分享给大家,小白可参考,同时期待大佬的指点。
    一个问题:这里用的dds按道理是标准化了的,但是实际看来并非如此。为什么?

    相关文章

      网友评论

        本文标题:ggplot2一页多图Rmisc-multiplot功能新手排雷

        本文链接:https://www.haomeiwen.com/subject/kinayhtx.html