RNAseq数据分析生信绘图转录组学

做一个好看点的箱线分页图

2020-12-17  本文已影响0人  一只烟酒僧

ggplot分页修饰:https://zhuanlan.zhihu.com/p/225852640

library(ggplot2)
library(reshape2)
library(stringr)
library(ggsignif)
library(ggsci)
library(Hmisc)
expr_mat<-seurat@assays$RNA@data[c("ZP1","ZP2","ZP3"),]
expr_mat<-as.data.frame(expr_mat)
expr_mat$gene=rownames(expr_mat)

#宽数据转长数据
expr_mat_log<-melt(expr_mat,id.vars = length(colnames(expr_mat)),variable.name = "sample",value.name = "expression")
seurat@meta.data$stage=str_extract(seurat@meta.data$cell.type,"primordial|primary|secondary|antral|preovulatory")
metadata<-seurat@meta.data[,c("stage","cell.type")]
metadata$sample=rownames(metadata)
expr_mat_log_anno<-merge(expr_mat_log,metadata,by.x = "sample",by.y = "sample",all.x = T)
expr_mat_log_anno$cell.type<-str_extract(expr_mat_log_anno$cell.type,"Granulosa|Oo")
expr_mat_log_anno$stage<-factor(expr_mat_log_anno$stage,levels = c("primordial","primary","secondary","antral","preovulatory"))
#作图
ggplot(expr_mat_log_anno,aes(x=stage,y=expression,fill=cell.type))+
  geom_boxplot(notch = T,notchwidth = 0.5,show.legend = T,outlier.size = NULL)+ 
  geom_jitter(size=0.2,show.legend = F)+
  facet_wrap(~gene,ncol = 1)+
  scale_fill_aaas()+
  scale_fill_discrete(label=c("Granulosa","Oocyte"))+ #修改图例的label
  scale_x_discrete(label=capitalize(levels(expr_mat_log_anno$stage)))+ #修改轴label
  theme(axis.title.x = element_blank(),
        axis.title.y = element_text(size = 15),
        axis.text = element_text(size = 15),
        axis.line = element_line(size = 0.5),#以上为修改轴参数
        strip.text = element_text(size = 15,color = "white"),
        strip.background = element_rect(fill=pal_aaas()(10)[5],color = "black",size=1),#以上为修改分页参数
        panel.grid = element_blank(),
        panel.grid.major = element_blank(),
        panel.grid.minor = element_line(size = 0.5,color = "grey",linetype = 2),
        panel.background = element_blank(),##以上为修改背景参数
        legend.position = "top",,
        legend.text = element_text(size = 15),
        legend.title = element_text(size = 15))+#以上为修改图例参数
  ylab("log2(FPKM+1)")

image.png
上一篇下一篇

猜你喜欢

热点阅读