我有一个在 R 中导入的 150 个基因的树状图,并且我有一个数据框,它具有与树状图相同的标签,其得分值从 0 到 200,与树状图无关。
例如,我想使用从蓝色到红色的颜色渐变,使用表格中的得分值为树状图的标签着色。我在以下链接中找到了类似问题的答案 如何通过R中的附加因子变量为树状图的标签着色以及如何根据定义的组为树状图的标签着色?(在 R 中)
但是我无法弄清楚如何为我的代码转换示例代码,因为:
1)它们都没有将树状图与标签链接的外部值匹配,
2)我想根据分数分配颜色,而不是随机颜色。
这是我的代码的数据示例
library(ape)
library(dendextend)
# Load tree
MyTree <- read.tree("species_tree.ph")
((浣熊:19.19959,熊:6.80041):0.84600,((海狮:11.99700,海豹:12.00300):7.52973,((猴子:100.85930,猫:47.14069):20.59201,黄鼠狼:18.87953):238,646 :25.46154);
MyTree$root.edge <- 0 # Root the tree
MyTree=root(MyTree,"monkey",resolve.root = TRUE)
utree <- chronos(MyTree, lambda = 0, model = "correlated") # Convert to ultrametric
dend=as.dendrogram(utree) # Make dendogram
plot(dend)
# Load data of scores
scores <- read.csv("Scores_species.csv", header = TRUE, sep ="\t")
Species Score
1 raccoon 97
2 bear 78
3 sea_lion 46
4 seal 14
5 monkey 57
6 cat 89
7 weasel 88
8 dog 97
dend2 <- color_labels(dend, k=8, groupLabels = scores ) # Add colors to labels
(这里我想根据分数来获得颜色的渐变) 这个图是用其他工具生成的,但它是我希望用 R 中的一些渐变颜色工具生成的