"label" assignment operator for vectors, dendrogram, and hclust classes.

labels(object, ...) <- value

# S3 method for default
labels(object, ...) <- value

# S3 method for dendrogram
labels(object, ...) <- value

# S3 method for hclust
labels(object, order = TRUE, ...)

# S3 method for hclust
labels(object, ...) <- value

# S3 method for phylo
labels(object, ...)

# S3 method for phylo
labels(object, ...) <- value

Source

The functions here are based on code by Gavin and kohske from (adopted to dendrogram by Tal Galili): https://stackoverflow.com/questions/4614223/how-to-have-the-following-work-labelsx-some-value-r-question Also with some ideas from Gregory Jefferis's dendroextras package.

Arguments

object

a variable name (possibly quoted) who's label are to be updated

...

parameters passed (not currently in use)

value

a value to be assigned to object's label

order

default is FALSE. Only relevant for extracting labels from an hclust object (with labels.hclust). Setting order=TRUE will return labels in their order in the dendrogram, instead of the riginal labels order retained from object$labels - which ususally corresponding to the row or column names of the dist object provided to the hclust function.

Value

The updated object

Details

###################

See also

Author

Gavin Simpson, Tal Galili (with some ideas from Gregory Jefferis's dendroextras package)

Examples

x <- 1:3
labels(x)
#> [1] "1" "2" "3"
labels(x) <- letters[1:3]
labels(x) # [1] "a" "b" "c"
#> [1] "a" "b" "c"
x
#> a b c 
#> 1 2 3 
# a b c
# 1 2 3


# get("labels<-")

################
# Example for using the assignment with dendrogram and hclust objects:
hc <- hclust(dist(USArrests[1:3, ]), "ave")
dend <- as.dendrogram(hc)

labels(hc) # "Arizona" "Alabama" "Alaska"
#> [1] "Arizona" "Alabama" "Alaska" 
labels(hc) <- letters[1:3]
labels(hc) # "a" "b" "c"
#> [1] "a" "b" "c"
labels(dend) # "Arizona" "Alabama" "Alaska"
#> [1] "Arizona" "Alabama" "Alaska" 
labels(dend) <- letters[1:3]
labels(dend) # "a" "b" "c"
#> [1] "a" "b" "c"
suppressWarnings(labels(dend) <- LETTERS[1:2]) # will produce a warning
labels(dend) # "A" "B" "A"
#> [1] "A" "B" "A"
labels(dend) <- LETTERS[4:6] # will replace the labels correctly
# (the fact the tree had duplicate labels will not cause a problem)
labels(dend) # "D" "E" "F"
#> [1] "D" "E" "F"