Retrieve/assign colors to the labels of a dendrogram. Note that usually dend objects come without any color assignment (and the output will be NULL, until colors are assigned).

labels_colors(dend, labels = TRUE, ...)

labels_col(dend, labels = TRUE, ...)

labels_colors(dend, ...) <- value

Arguments

dend

a dendrogram object

labels

Boolean (default is TRUE), should the returned vector of colors return with the leaves labels as names.

...

not used

value

a vector of colors to be used as new label's colors for the dendrogram

Source

Heavily inspired by the code in the example of dendrapply, so credit should go to Martin Maechler. I also implemented some ideas from Gregory Jefferis's dendroextras package (having the "names" of the returned vector be the labels).

Value

A vector with the dendrogram's labels colors (or a colored dendrogram, in case assignment is used). The colors are labeled.

See also

Examples

# define dendrogram object to play with: hc <- hclust(dist(USArrests[1:3, ]), "ave") dend <- as.dendrogram(hc) # Defaults: labels_colors(dend)
#> NULL
plot(dend)
# let's add some color: labels_colors(dend) <- 2:4 labels_colors(dend)
#> Arizona Alabama Alaska #> 2 3 4
plot(dend)
# doesn't work... # get_nodes_attr(dend, "nodePar", include_branches = FALSE) # changing color to black labels_colors(dend) <- 1 labels_colors(dend)
#> Arizona Alabama Alaska #> 1 1 1
plot(dend)
# removing color (and the nodePar completely - if it has no other attributed but lab.col) suppressWarnings(labels_colors(dend) <- NULL) labels_colors(dend)
#> NULL
plot(dend)