Я не часто использую пакет plotly, и, надеюсь, кто-то придет с более элегантным решением, но следующие (на моем компьютере в любом случае) работают с филогенными деревьями:
k = 5 # change this based on number of groups for cutting the tree
gp <- ggplotly(
fviz_dend(
hcl,
k = k,
show_labels = TRUE, # leave this as the default TRUE, so that the labels
# are passed to the plotly object; we can remove them
# in the next step.
type = "phylogenic",
phylo_layout = "layout_as_tree")
)
# remove hover text for line segments
gp$x$data[[1]]$text <- NA
# for each group, assign the label's text value to the point's text value,
# then remove the label
for(i in seq(k, 1)){
gp$x$data[[i+1]]$text <- gp$x$data[[i+1+k]]$text
gp$x$data[[i + 1 + k]] <- NULL
}
gp
Примечание. Определенное количество слоев, созданных прямоугольными деревьями, отличается от приведенного выше, поэтому решение для филогенных деревьев не будет применяться напрямую.Но я предполагаю, что ваш вариант использования для филогенных.