r软件如何制作发育树

时间:2025-01-24 18:06:10 主机游戏

在R中制作发育树,可以使用多个包,具体步骤如下:

使用`TreeAndLeaf`包

安装和加载必要的包

```R

install.packages(c("TreeAndLeaf", "RedeR", "igraph", "RColorBrewer"))

library(TreeAndLeaf)

library(RedeR)

library(igraph)

library(RColorBrewer)

```

加载数据集

```R

df <- USArrests

head(df)

dim(df)

```

构建层次聚类对象并查看进化树

```R

hc <- hclust(dist(df), method = "ave")

plot(hc, main = "Dendrogram for the 'USArrests' dataset", xlab = "", sub = "")

```

将层次聚类对象转换为tree-and-leaf对象

```R

tal <- treeAndLeaf(hc)

```

将属性映射到tree和leaf对象(添加外部注释)

```R

tal2 <- att.mapv(g = tal)

```

使用`ggtree`包

安装和加载必要的包

```R

install.packages("ggtree")

install.packages("treeio")

install.packages("ggplot2")

library(ggtree)

library(treeio)

library(ggplot2)

```

加载数据集

```R

tree <- read.tree("data/k")

```

绘制水平系统发育树

```R

p <- ggtree(tree)

p

```

在树的右侧添加热图、点图和柱状图

```R

p + geom_heatmap(aes(fill = value), show_legend = FALSE) +

geom_point(aes(x = name, y = value), color = "red") +

geom_col(aes(x = name, y = value), fill = "blue")

```

使用`tidytree`包

安装和加载必要的包

```R

install.packages("tidytree")

install.packages("ggplot2")

library(tidytree)

library(ggplot2)

```

读取树形结构文件(Newick格式)

```R

tree <- read.tree("data/k")

```

绘制系统发育树

```R

p <- ttree(tree)

p + geom_tree(size = 1)

```

使用`geiger`包

安装和加载必要的包

```R

install.packages("geiger")

install.packages("ggplot2")

library(geiger)

library(ggplot2)

```

导入树和数据并绘制树

```R

mammals <- read.table("final_compilation_with_percentage_values.R1.csv", header = TRUE, sep = ",")

plot(mammals)

```

总结

以上是使用不同R包制作发育树的步骤。根据具体需求和数据类型,可以选择合适的包和方法来绘制系统发育树。`ggtree`和`tidytree`等包提供了丰富的自定义选项,可以满足不同场景下的需求。