美文网首页ggplot2绘图数据-R语言-图表-决策-Linux-Python
ggplot第五篇--几何对象与统计变换的简单对应

ggplot第五篇--几何对象与统计变换的简单对应

作者: 小洁忘了怎么分身 | 来源:发表于2018-08-23 22:54 被阅读63次
    微信公众号生信星球同步更新我的文章

    写在前面
    今天发生了一件有趣的事。在从食堂回实验室的路上, 我和师姐讨论了一点实验的问题,说到western需要抗体,可是好慢啊,我看到走在前面的小哥愣了一下,我想人家会不会把我当成书呆子了,路上竟然讨论实验?或者就是他做的实验和我一样,不由自主瞅了一眼。
    然后小哥回头跟我说上话了,原来他是诺禾致源的销售,他们公司有这个业务,并且很快的!!!哇这样的销售简直厉害了,竟然走着路都不忘工作,这要是谈成了,岂不是从路上捡来的生意?立刻刮目相看,要了名片。诺禾不愧是大公司,有这样的敬业的员工真的是好棒。
    然后我跟一个在诺禾做工程师的朋友聊起来这件事,画风是这样的:



    呃。。。同样的敬业又优秀的员工!!作为一个工程师,竟然还不忘给我推销一把。
    不说了,我本来就是诺禾粉丝,这下更被圈粉。那位销售小哥听说我学生信,竟然还要拉我去他们公司工作哈哈哈,经他同意在这里贴个名片,北京的小伙伴有需求可以联系下啊~


    这样敬业的员工应该升职加薪,我要奔走相告!

    1.示例数据

    在公众号回复:dexp.csv,获得示例数据。
    读取数据:

    dexp <- read.csv("dexp.csv",row.names = 1)#设置第一列为行名
    

    示例数据:40个基因,每个基因9个重复,加上这9个重复各自的观测值,以及每个基因的长度。
    准备好ggplot2和gridExtra包。
    数据简化:取前四个基因

    dexp_small <- filter(dexp, Gene %in% paste("G", 1:4, sep = ""))
    

    2.定义背景图层

    要绘制7个图形,可以先定义背景图层,以简化代码。

    p <- ggplot(data = dexp_small, aes(x = Sample, y = Expression))
    

    3.绘制各类图形

    #geom_point:散点图
    p_point <-p + geom_point(
      stat = "identity",
      aes(color = Gene),
    ) +
      labs(title = "geom_point") 
    #geom_bar:条形图
    p_bar1<-p + geom_bar(
      stat = "identity",
      aes(fill = Gene), #fill是填充颜色,改成color就是边框颜色了,默认填充黑色
    )
    p_bar2 <- p + geom_bar(
      stat = "identity",
      aes(fill = Gene),
      position = "dodge" #默认stack,改为dodge则是并排,fill将总和算作一,显示百分比。
    ) 
    #geom_line:折线图
    p_line <- p + geom_line(
      stat = "identity", 
      aes(color = Gene, group = Gene) 
    )
    #geom_area:面积图 #折线图的积分
    p_area <- p + geom_area(
      stat = "identity",
      aes(fill = Gene, group = Gene),
      position = "dodge",  #改成“stack”,则会层叠起来
      alpha = 5/10 #产生遮挡,调整透明度
    ) 
    #geom_boxplot:箱线图
    p_boxplot <- p + geom_boxplot(
      stat = "boxplot",
      aes(color = Sample, group = Sample)
    ) 
    ##密度图
    p_density <- ggplot(data = dexp_small)+
      geom_density(stat = "density",
        aes(Expression, color = Gene))
    ##小提琴图
    p_violin <-ggplot(data = dexp_small,aes(x = Sample, y = Expression)) + geom_violin(stat = "ydensity",
      aes(fill = Sample,color=Sample))
    

    3.合并显示在同一张图上-grid.arrange

    grid.arrange(p_point, p_bar1,p_bar2, p_line, p_area,p_boxplot,p_violin, p_density,ncol = 2)#两列
    
    这图真好看

    相关文章

      网友评论

        本文标题:ggplot第五篇--几何对象与统计变换的简单对应

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