Monocle2: plot_genes_branched_pseudotime()

1. 普通plot

plot_genes_branched_pseudotime(monocle2_object[c("LOC408449","LOC411104"), ], branch_point = 1, color_by = "celltype", ncol = 1, cell_size=2, branch_labels=c("Polar_body", "Spermatid"))+scale_color_manual(values = c("#FDE725FF", "#3AC96DFF", "#440154FF"))

image.png

2. 提取plot中的数据

    1. 绘制图片
      kk <- plot_genes_branched_pseudotime(monocle2_object[c("LOC408449","LOC411104"), ], branch_point = 1, color_by = "celltype", ncol = 1, cell_size=2, branch_labels=c("Polar_body", "Spermatid")) + scale_color_manual(values = c("red", "blue", "yellow"))
    1. 提取图片中的数据
      kk <- ggplot_build(kk)
    1. 点的数据
      pp <- kk$data[[1]]
      点的数据
  • PANEL : 对应plot_genes_branched_pseudotime中绘制两个基因;画在前面的基因对应PANEL 1;画在后面的基因对应PANEL 2
  • group : 对应不同的点类型,与plot_genes_branched_pseudotimecolor_by相对应,color_by对应的值是Pdata(monocle2_object)中的一列,这一列的值是factor,这一列中的factorlevel在最前面的对应group 1并以此类推
    1. 线的数据
      ff <- kk$data[[2]]
      线的数据
  • linetype : 与之后的group相对应,规定了不同线的线型
  • PANEL : 对应plot_genes_branched_pseudotime中绘制两个基因;画在前面的基因对应PANEL 1;画在后面的基因对应PANEL 2
  • group : 对应同一副图中的线,与branch对应

3. 用提取的数据进行绘图示例

kk <- plot_genes_branched_pseudotime(monocle2_object[c("LOC408449","LOC411104"), ], branch_point = 1, color_by = "celltype", ncol = 1, 
                               cell_size=2, branch_labels=c("Polar_body","Spermatid"))+scale_color_manual(values = c("red","blue","yellow"))

kk <- ggplot_build(kk)
kk$plot  '#示例一

pp <- kk$data[[1]]
pp[,1][pp[,1]=="red"] <- "Spermatocyte"; pp[,1][pp[,1]=="blue"] <- "Spermatid"; pp[,1][pp[,1]=="yellow"] <- "Polar_body"
pp[,1] <- ordered(pp[,1], levels=c("Polar_body","Spermatocyte","Spermatid"))

ff <- kk$data[[2]]

pp_1 <- pp[pp$PANEL==1,]
pp_2 <- pp[pp$PANEL==2,]

ff_1 <- ff[ff$PANEL==1,]
ff_2 <- ff[ff$PANEL==2,]

#示例二
pdf("/home/zhiyong/Desktop/ZZZZZZZZZZZ/Gene_expression_along_pseudotime_with_branch_of_gene-LOC408449_1.pdf", width = 7, height = 5)
ggplot()+geom_point(data = pp_1, aes(x=x, y=y, color=colour), size=2, alpha=0.8)+theme_cowplot()+scale_color_manual(values = c("#440154FF","gold","#3AC96DFF"))+
  geom_line(data = ff_1[ff_1$group==1,], aes(x=x, y=y), lwd=2.5)+geom_line(data = ff_1[ff_1$group==2,], aes(x=x, y=y), lwd=2.5, lty=8)
dev.off()

#示例三
pdf("/home/zhiyong/Desktop/ZZZZZZZZZZZ/Gene_expression_along_pseudotime_with_branch_of_gene-LOC408449_2.pdf", width = 5, height = 5)
ggplot()+geom_point(data = pp_1[pp_1$colour=="Spermatocyte",], aes(x=x, y=y), color="gold", size=2, alpha=0.8)+
  geom_point(data = pp_1[pp_1$colour=="Spermatid",], aes(x=x, y=y), color="#3AC96DFF", size=2, alpha=0.8)+
  geom_point(data = pp_1[pp_1$colour=="Polar_body",], aes(x=x, y=y), color="#440154FF", size=2, alpha=0.8)+theme_cowplot()+
  geom_line(data = ff_1[ff_1$group==1,], aes(x=x, y=y), lwd=2.5)+geom_line(data = ff_1[ff_1$group==2,], aes(x=x, y=y), lwd=2.5, lty=8)
dev.off()

#示例四
pdf("/home/zhiyong/Desktop/ZZZZZZZZZZZ/Gene_expression_along_pseudotime_with_branch_of_gene-LOC408449_3.pdf", width = 7, height = 5)
ggplot()+geom_point(data = pp_1[pp_1$colour=="Spermatocyte",], aes(x=x, y=y), color="gold", size=2, alpha=0.8)+
  geom_point(data = pp_1[pp_1$colour!="Spermatocyte",], aes(x=x, y=y, color=colour), size=2, alpha=0.8)+scale_color_manual(values = c("#440154FF","#3AC96DFF"))+theme_cowplot()+
  geom_line(data = ff_1[ff_1$group==1,], aes(x=x, y=y), lwd=2.5)+geom_line(data = ff_1[ff_1$group==2,], aes(x=x, y=y), lwd=2.5, lty=8)
dev.off()
示例一

示例二

示例三

示例四
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容