91超碰碰碰碰久久久久久综合_超碰av人澡人澡人澡人澡人掠_国产黄大片在线观看画质优化_txt小说免费全本

溫馨提示×

溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊×
其他方式登錄
點擊 登錄注冊 即表示同意《億速云用戶服務條款》

怎么用R語言繪制進化樹和熱圖

發布時間:2022-01-20 14:52:03 來源:億速云 閱讀:678 作者:iii 欄目:開發技術

今天小編給大家分享一下怎么用R語言繪制進化樹和熱圖的相關知識點,內容詳細,邏輯清晰,相信大部分人都還太了解這方面的知識,所以分享這篇文章給大家參考一下,希望大家閱讀完這篇文章后有所收獲,下面我們一起來了解一下吧。

系統進化樹:也叫作聚類樹或者進化樹,是生物信息學中描述不同生物之間的相關關系的方法。

作用:通過繪制進化樹分析可以了解所有生物的進化歷史過程系統發育樹的主要構成、找出不同物種間的進化關系、理解祖先序列與其后代之間的關系、估算一組共有共同祖先的物種間的分歧時間等等。

一、準備文件

  1. 樹文件:nwk格式:tree.nwk 

  2. 腳本: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語言繪制進化樹和熱圖”這篇文章的所有內容,感謝各位的閱讀!相信大家閱讀完這篇文章都有很大的收獲,小編每天都會為大家更新不同的知識,如果還想學習更多的知識,請關注億速云行業資訊頻道。

向AI問一下細節

免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。

AI

都兰县| 改则县| 碌曲县| 乐山市| 叙永县| 黔西| 剑阁县| 广元市| 宁化县| 静乐县| 九台市| 元朗区| 建湖县| 宜君县| 五常市| 夏河县| 浮梁县| 剑川县| 祁连县| 舒城县| 沈丘县| 佛冈县| 巩留县| 丰原市| 石嘴山市| 阳泉市| 宣化县| 清原| 中西区| 息烽县| 泰来县| 林周县| 舒城县| 朔州市| 台南县| 建始县| 宁武县| 黔江区| 石嘴山市| 宣汉县| 休宁县|