GenVisR包是一個用于基因組可視化的包。為我們提供了多種用于展示基因組突變陶舞、基因突變等圖像嗽测,包括我們熟知的基因突變瀑布圖等。今天介紹該包中的waterfall函數(shù)功能肿孵。
在學(xué)習(xí)該包的使用時论咏,發(fā)現(xiàn)網(wǎng)上有許多不錯的介紹該包用法的博文,已經(jīng)詳細(xì)介紹了基因突變瀑布圖繪制的詳細(xì)參數(shù),但是大多都是基于該函數(shù)中作者定義的MAF/MGI格式進(jìn)行講解:
所以突變的類型僅限于表格中展示的,但是實際上振定,我們經(jīng)常會遇到表格以外的突變類型箍土,那我們要怎么辦呢?
GenVisR的waterfall函數(shù)filetype中除了MAF/MGI還提供了第三種“Custom”即為自定義葵硕。這種類型為我們提供了操作性更強的繪圖手段眉抬。
GenVisR包的下載
if (!requireNamespace("BiocManager", quietly = TRUE))
install.packages("BiocManager")
BiocManager::install("GenVisR", version = "3.8")
waterfall函數(shù)的使用
GenVisR包為我們提供了waterfall函數(shù)使用的示例贯吓。
# Load GenVisR and set seed
library(GenVisR)
# Plot only genes with mutations in 6% or more of samples
waterfall(brcaMAF, mainRecurCutoff = 0.06)
當(dāng)然你可以顯示指定的基因:
# Plot only the specified genes
waterfall(brcaMAF, plotGenes = c("PIK3CA", "TP53", "USH2A", "MLL3", "BRCA1"))
或者顯示樣本更多的臨床信息:
# Create clinical data
subtype <- c("lumA", "lumB", "her2", "basal", "normal")
subtype <- sample(subtype, 50, replace = TRUE)
age <- c("20-30", "31-50", "51-60", "61+")
age <- sample(age, 50, replace = TRUE)
sample <- as.character(unique(brcaMAF$Tumor_Sample_Barcode))
clinical <- as.data.frame(cbind(sample, subtype, age))
# Melt the clinical data into 'long' format.
library(reshape2)
clinical <- melt(clinical, id.vars = c("sample"))
# Run waterfall
waterfall(brcaMAF, clinDat = clinical, clinVarCol = c(lumA = "blue4", lumB = "deepskyblue",
her2 = "hotpink2", basal = "firebrick2", normal = "green4", `20-30` = "#ddd1e7",
`31-50` = "#bba3d0", `51-60` = "#9975b9", `61+` = "#7647a2"), plotGenes = c("PIK3CA",
"TP53", "USH2A", "MLL3", "BRCA1"), clinLegCol = 2, clinVarOrder = c("lumA",
"lumB", "her2", "basal", "normal", "20-30", "31-50", "51-60", "61+"))
上述的代碼,大家在GenVisR包的手冊中都可以查看蜀变。
接下來悄谐,我們介紹一下如果你的數(shù)據(jù)突變類型與GenVisR要求的不一樣,包含了更多的信息時候應(yīng)該怎么辦库北?
首先我們了解一下輸入文件的格式爬舰,非常簡單,3列即可——樣品名稱寒瓦、基因symbol情屹、突變類型:
要注意的是表頭名字,waterfall的自定義模式要求了三列的名字必須為:sample杂腰,gene垃你,variant_class。
可以對原始數(shù)據(jù)進(jìn)行修改也可以在R中重新設(shè)置表頭喂很。
如果你的數(shù)據(jù)還包含了其他信息惜颇,不用刪除,保留即可少辣。只要確保你的數(shù)據(jù)中含有按照要求命名的這三列信息即可凌摄。
library(GenVisR)
#import data
Dat<-read.table('~/Desktop/waterfalldata.txt',header=T,stringsAsFactors = F,check.names = F,sep='\t’)
#change header
colnames(Dat)<-c('sample', 'gene','variant_class’)
按要求調(diào)整好數(shù)據(jù)格式之后,我們就要進(jìn)行繪圖毒坛。主要是兩個參數(shù)的變化望伦,第一個fileType選擇‘Custom’,另外我們要設(shè)定variant_class的順序煎殷。如果你有明確的前后順序可以給予確定的順序屯伞,要記得把數(shù)據(jù)中所有的突變類型都要輸入。如果你無所謂先后順序豪直,你可以參考下列代碼劣摇,即按照數(shù)據(jù)中突變類型出現(xiàn)的先后順序為最終的排序順序。
#plot
waterfall(Dat,fileType = 'Custom',variant_class_order = levels(factor(Dat$variant_class)))
然后你就可以得到你想要的瀑布圖了弓乙。