У меня проблемы с маркировкой отдельных подсказок в моем дереве с помощью ggtree. Я пытаюсь выделить и пометить узлы дерева с помощью geom_hilight и geom_cladelabel. Кажется, это нормально работает с узлами, имеющими более одной вершины дерева, но когда я пытаюсь пометить одну подсказку, я получаю предупреждающее сообщение, и подсказка не маркируется.
Пример:
library(dplyr)
library(ggtree)
library(dplyr)
library(ggtree)
#Create tree
set.seed(123)
tree <- rtree(30)
ggtree(tree)
#Highlight and label clade
ggtree(tree) + geom_text(aes(label=node)) + geom_tiplab(size=3, offset=0.1) +
geom_hilight(node=3, fill="steelblue", alpha=0.5) +
geom_hilight(node=38, fill="pink", alpha=0.5) +
geom_cladelabel(node=38, label="clade 2", align=T,
color='black', fontsize=4)
Как видите, я могу выделить узлы 38 и 3 с помощью geom_hilight. Я также пометил узел 38 текстом «Clade 2» с помощью geom_cladelabel.
Однако, когда я пытаюсь пометить узел 3 с помощью geom_cladelabel, я получаю предупреждающее сообщение:
#Highlight and label single tip
ggtree(tree) + geom_text(aes(label=node)) + geom_tiplab(size=3, offset=0.1) +
geom_hilight(node=3, fill="steelblue", alpha=0.5) +
geom_hilight(node=38, fill="pink", alpha=0.5) +
geom_cladelabel(node=3, label="clade 1", align=T,
color='black', fontsize=4) +
geom_cladelabel(node=38, label="clade 2", align=T,
color='black', fontsize=4)
Warning messages:
1: In max(sp.df$x, na.rm = TRUE) :
no non-missing arguments to max; returning -Inf
2: In min(y) : no non-missing arguments to min; returning Inf
3: In max(y) : no non-missing arguments to max; returning -Inf
4: In max(sp.df$x, na.rm = TRUE) :
no non-missing arguments to max; returning -Inf
5: In min(y) : no non-missing arguments to min; returning Inf
6: In max(y) : no non-missing arguments to max; returning -Inf
Строка от метки клады по какой-то причине закрывает все дерево:
Есть ли способ пометить отдельную подсказку так же, как clade_geomlabel для обычных узлов?
Любая помощь приветствуется.