#Open Data
rm(list = ls())
options(stringsAsFactors = F)
library(readxl)
data<- read_excel("G1 vs G2.xlsx")
output <- data
#處理矩陣
#output <- output[,-c(5:9)]
#output <- output[,c(1:5)]
#output$logFC <- output$logFC*(-1)
#定義change
output$change = ifelse(output$PValue < 0.05 & abs(output$logFC) >= 1,
ifelse(output$logFC> 1 ,'Up','Down'),
'Stable')
##自己注釋
#讀入length
#library(dplyr)
#colnames(list)[1] = 'NAME'
#colnames(output)[1] = 'NAME'
#exp <- inner_join(output,list,by ="NAME")
#需要突出顯示的基因列表(自定義)
geneList0 <- c('CYR61','CYP24A1','ANKRD1','CTGF','VDR')
output<- output[!duplicated(output$GeneSymbol),]
class(output)
output=as.data.frame(output)
##此步可以標注差異最大的gene
#data$label=ifelse(data$p.value < 0.000001 & abs(log2(data$FC)) >= 1,data$symbol,"")
##去掉遺漏值
sum(is.na(output$GeneSymbol))
#which(is.na(output$GeneSymbol))
#output<-output[-22,]
#sum(is.na(output$GeneSymbol))
row.names(output) <- output$GeneSymbol
geneList <- output[geneList0,]
sum(output$change=='Up')
sum(output$change=='Down')
#先畫圖
library('ggplot2')
p <- ggplot(# 數(shù)據(jù)、映射具垫、顏色
output, aes(x = logFC, y = -log10(PValue), colour=change)) +
geom_point(alpha=0.5, size=2) +
scale_color_manual(values=c("#2d7287","#d2dae2","#990715"))+
#突出表示差異基因
geom_point(data=geneList,aes(x = logFC, y = -log10(PValue)),colour="black",size=3)+
#輔助線
geom_vline(xintercept=c(-1,1),lty=3,col="black",lwd=0.8) +
geom_hline(yintercept = -log10(0.05),lty=3,col="black",lwd=0.8) +
labs(x="log2(fold change)",y="-log10 (p-value)")+ # 坐標軸# 坐標軸和圖標題title="Volcano plot",
theme_bw()+ #去除背景色
theme(panel.grid = element_blank())+ #去除網(wǎng)格線
#xlim(-2, 2)+ #設(shè)置坐標軸范圍
#圖例
theme(plot.title = element_text(hjust = 0.5,size=24),
legend.position="bottom",
legend.title = element_blank(),
legend.text=element_text(size=18),
legend.key.size = unit(1, 'cm'),
legend.background = element_rect(fill="gray90", linetype="solid",colour ="gray"),
axis.title.x =element_text(size=18),
axis.title.y=element_text(size=18),
axis.text=element_text(size=14,face = "bold"))
p
#行名變?yōu)閿?shù)字
rownames(output) <- 1:nrow(output)
#標記出5個基因的label
geneList <- as.data.frame(geneList0)
geneList[,2] <- geneList
colnames(geneList) <- c("gene","GeneSymbol")
#output$GeneSymbol
geneList$GeneSymbol
#class(output)
#class(geneList)
c <-merge(output,geneList,by='GeneSymbol', all.x=T) #增加label列记罚,以突出顯示指定基因
##添加標簽
library(ggrepel)
p + geom_label_repel(data = c,
aes(x = logFC, y = -log10(PValue), label = gene),
size = 4,color="black",
#box.padding = unit(0.5, "lines"),
#point.padding = unit(0.8, "lines"),
#segment.color = "black", #連線的顏色
#segment.size = 0.4, #連線的粗細
#arrow = arrow(length=unit(0.01, "npc")), #標簽溃睹、點之間連線的箭頭
show.legend = FALSE)
在火山圖上標注自定義基因
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
- 文/潘曉璐 我一進店門岳瞭,熙熙樓的掌柜王于貴愁眉苦臉地迎上來拥娄,“玉大人,你說我怎么就攤上這事瞳筏≈神” “怎么了?”我有些...
- 文/不壞的土叔 我叫張陵姚炕,是天一觀的道長摊欠。 經(jīng)常有香客問我,道長钻心,這世上最難降的妖魔是什么凄硼? 我笑而不...
- 正文 為了忘掉前任铅协,我火速辦了婚禮捷沸,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘狐史。我一直安慰自己痒给,他們只是感情好说墨,可當我...
- 文/花漫 我一把揭開白布。 她就那樣靜靜地躺著苍柏,像睡著了一般尼斧。 火紅的嫁衣襯著肌膚如雪。 梳的紋絲不亂的頭發(fā)上试吁,一...
- 文/蒼蘭香墨 我猛地睜開眼,長吁一口氣:“原來是場噩夢啊……” “哼碟贾!你這毒婦竟也來了币喧?” 一聲冷哼從身側(cè)響起,我...
- 正文 年R本政府宣布脉让,位于F島的核電站,受9級特大地震影響功炮,放射性物質(zhì)發(fā)生泄漏溅潜。R本人自食惡果不足惜,卻給世界環(huán)境...
- 文/蒙蒙 一薪伏、第九天 我趴在偏房一處隱蔽的房頂上張望滚澜。 院中可真熱鬧,春花似錦嫁怀、人聲如沸设捐。這莊子的主人今日做“春日...
- 文/蒼蘭香墨 我抬頭看了看天上的太陽萝招。三九已至蚂斤,卻和暖如春,著一層夾襖步出監(jiān)牢的瞬間槐沼,已是汗流浹背曙蒸。 一陣腳步聲響...
推薦閱讀更多精彩內(nèi)容
- 目前在工作或生活中,越來越離不開地圖了凶朗,不止是因為地圖的可視化瓷胧,更因為地圖在用途上的多樣化,不止是導(dǎo)航棚愤,還...
- 我是個R新手搓萧,只會簡單的畫一些圖,還不能隨心所欲的畫圖宛畦。Hadley Wickham男神的ggplot2包以及ti...
- 24反肋、第二十四計 假道伐虢以借路為名,實際上要侵占該國(或該路)踏施。虢石蔗,諸侯國名。也作“假道滅虢”畅形。 代碼來源 下面...
- 由于項目需求养距,需要將高德地圖api 中的,覆蓋物日熬,自定義棍厌。但是由于官方教程是由oc 語言編寫,于是,不得不將oc ...