vlambda博客
学习文章列表

手把手演示R语言绘制多个基因表达值小提琴图

  

白介素2的读书笔记,分享临床科研干货,一起见证时间的力量



手把手演示R语言绘制多个基因表达值小提琴图
image.png

数据准备

#set your work directory
data<-read.csv(file = "data.csv",header = T,sep = ",")
colnames(data)<-c("gene",colnames(data)[-1])
test<-data[1:5,1:5]
View(test)

###
data<-aggregate(data[,2:ncol(data)],by=list(data$gene),FUN = mean,na.rm=T)##重复基因求平均值
genename<-data$Group.1
rownames(data)<-genename
data<-data[,-1]
sampleID<-colnames(data)
data<-apply(data1as.numeric)
rownames(data)<-sampleID
##分组信息构造
group<-c(rep("N",14),rep("DCIS",9),rep("IBC",9),rep("NS",14),rep("DCISS",11),rep("IBCS",9))
length(group)==dim(data)[[1]]##确认信息匹配
## [1] TRUE
data<-as.data.frame(data)
data$group<-group
table(data$group)
#
##  DCIS DCISS   IBC  IBCS     N    NS 
##     9    11     9     9    14    14
data[1:5,1:5]##行为sample名 列为gene
##      ACVR1B    CXCR4     IL11    INHBA      LTB
## N1 3.812931 3.669153 2.922135 2.916415 3.072535
## N2 2.968409 4.270815 2.988273 3.068690 2.757790
## N3 3.806364 4.327977 2.811002 2.546459 2.897796
## N4 3.621140 3.698909 2.815539 3.278493 2.785017
## N5 3.812910 4.214652 2.814199 2.800704 2.916013

整合小提琴图

# http://www.sthda.com/english/articles/24-ggpubr-publication-ready-plots/
library(ggpubr)
## Loading required package: ggplot2
## Loading required package: magrittr
my_comparisons <- list(c("IBC""DCIS"), c("N""DCIS"), c("IBCS""DCISS"),c("NS" ,"DCISS"))##分组设定
#my_comparisons <- list( c("IBC""DCIS"), c("N""DCIS") )##分组设定
e<-data %>% 
  #dplyr::filter(group %in% c("IBC","N","DCIS")) %>% 
  ggviolin(x = "group", y = c(colnames(data)[1:6]), fill = "group",
           combine = T,
         #palette = c("#00AFBB""#E7B800""#FC4E07"),##
         ylab="Normalized Expression",
         add = "boxplot", add.params = list(fill = "white"))
e+stat_compare_means(method = "t.test",
                     #label = "p.signif",##星号设置
                     comparisons = my_comparisons)
手把手演示R语言绘制多个基因表达值小提琴图
image.png
                     #theme_gray(base_size = 14)##background
ggsave("all_violin.pdf", width = 10, height = 8)     

小提琴图DCIS VS. IBC/N

library(ggpubr)
my_comparisons <- list( c("IBC""DCIS"), c("N""DCIS") )##分组设定
e<-data %>% 
  dplyr::filter(group %in% c("IBC","N","DCIS")) %>% #筛选行
  ggviolin(x = "group", y = c(colnames(data)[1:6]), fill = "group",
           combine = T,
         #palette = c("#00AFBB""#E7B800""#FC4E07"),##颜色设置
         ylab="Normalized Expression",
         add = "boxplot", add.params = list(fill = "white"))
e+stat_compare_means(method = "t.test",
                     #label = "p.signif",##星号设置
                     comparisons = my_comparisons)
手把手演示R语言绘制多个基因表达值小提琴图
image.png
                     #theme_gray(base_size = 14)##background
ggsave("group1_violin.pdf", width = 10, height = 8)     

小提琴图DCISS VS. IBCS/NS

library(ggpubr)
my_comparisons <- list(c("IBCS","DCISS"),c("NS","DCISS"))##分组设定
e<-data %>% 
  dplyr::filter(group %in% c("IBCS","NS","DCISS")) %>% 
  ggviolin(x = "group", y = c(colnames(data)[1:6]), fill = "group",
           combine = T,
         #palette = c("#00AFBB""#E7B800""#FC4E07"),##
         ylab="Normalized Expression",
         add = "boxplot", add.params = list(fill = "white"))
e+stat_compare_means(comparisons = my_comparisons)
image.png
ggsave("group2_violin.pdf", width = 10, height = 8)     

箱线图

my_comparisons <- list(c("IBC""DCIS"), c("N""DCIS"), c("IBCS""DCISS"),c("NS" ,"DCISS"))##分组设定
e<-data %>% 
  #dplyr::filter(group %in% c("IBCS","NS","DCISS")) %>% 
  ggboxplot(x = "group", y = c(colnames(data)[1:6]), fill = "group",
           combine = T,
         #palette = c("#00AFBB""#E7B800""#FC4E07"),##
         ylab="Normalized Expression")
e+stat_compare_means(comparisons = my_comparisons)
image.png
ggsave("group2_boxplot.pdf", width = 10, height = 8)