您好,登錄后才能下訂單哦!
今天小編給大家分享一下怎么用R語言繪制進化樹和熱圖的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。
系統進化樹:也叫作聚類樹或者進化樹,是生物信息學中描述不同生物之間的相關關系的方法。
作用:通過繪制進化樹分析可以了解所有生物的進化歷史過程系統發育樹的主要構成、找出不同物種間的進化關系、理解祖先序列與其后代之間的關系、估算一組共有共同祖先的物種間的分歧時間等等。
一、準備文件:
樹文件:nwk格式:tree.nwk
腳本:tree_heatmap_plot.r
腳本代碼:
#!/usr/bin/env Rscript library(getopt) library(ggtree) library(EBImage) library(ggplot2) library(stringr) library(reshape2) spec <- matrix(c( 'help', 'h', 0, "logical", "help print", 'tree', 'i', 1, "character", "input file tree.nwk, required.", 'tax', 't', 1, "character", "input file heatmap , required.", 'height' , 'H', 1, "integer","the height of graph ,unit is inches [optional, default: 8]", 'width' , 'W', 1, "integer","the width of graph ,unit is inches [optional, default: 6]", 'outdir', 'o', 1, "character", "output directory for pic file, [optional, default: cwd]", 'name', 'n', 1, "character", "output file name prefix, [optional, default: tree_heatmap_plot]" ), byrow = TRUE, ncol = 5) opt <- getopt(spec) if ( !is.null(opt$help) | is.null(opt$tree) | is.null(opt$tax)) { cat(getopt(spec, usage=TRUE)) q(status=1) } tree <-read.tree(opt$tree) tax <- read.table(opt$tax,row.names = 1,header = TRUE,check.names = FALSE,sep = "\t") groupInfo <- split(row.names(tax),tax$phylum) tree2 <- groupOTU(tree,groupInfo) tax_p <- tax[,-1] p <- ggtree(tree2,aes(color=group),right = TRUE)+theme(legend.position= "right")+geom_tiplab(align=TRUE,linetype = "solid")#linetype線條類型,dotted點線;solid實線; p1 <- gheatmap(p,tax_p, offset=1, #offset設置兩者間距,用于解決圖重疊問題; font.size=3, #font.size設置熱圖文字大小,解決文字過大重疊; low="white", #最低值顏色 high="red", #最高值顏色 width = 1, #width設置熱圖相對樹圖的寬度,解決熱圖和樹圖大小關系; colnames_position = "bottom", #熱圖文字文字位置 colnames_angle=45, #調節熱圖角度 hjust =1, #調整熱圖標簽位置,解決文字與熱圖重疊問題。 ) pdf(file=paste(opt$outdir,"/",opt$name,".pdf",sep=""), height=opt$height, width=opt$width) print(p1) dev.off()
3.熱圖文件:my_tax.txt
文件格式:第一列是OTU屬的名稱、第二列為門水平的名稱、其他列表示不同的分組,注意文件第一列和進化樹的名稱對應。
運行代碼:
Rscript tree_heatmap_plot.r -i tree.nwk -t my_tax.txt -n phylogenetic_heatmap_plot -H 8 -W 6 -o phylogenetic
參數說明:
-i 加樹文件
-t 加熱圖文件
-n 繪圖名稱
-H 設置圖片高度
-W設置圖片寬度
-o 輸出目錄
以上就是“怎么用R語言繪制進化樹和熱圖”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。