在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`等包提供了丰富的自定义选项,可以满足不同场景下的需求。