Plot dendrogram tree
align_dendro(
mapping = aes(),
...,
distance = "euclidean",
method = "complete",
use_missing = "pairwise.complete.obs",
reorder_dendrogram = FALSE,
merge_dendrogram = FALSE,
reorder_group = FALSE,
k = NULL,
h = NULL,
cutree = NULL,
plot_dendrogram = TRUE,
plot_cut_height = NULL,
root = NULL,
center = FALSE,
type = "rectangle",
size = NULL,
data = NULL,
no_axes = NULL,
active = NULL
)
Default list of aesthetic mappings to use for plot. If not specified, must be supplied in each layer added to the plot.
<dyn-dots> Additional arguments passed to
geom_segment()
.
A string of distance measure to be used. This must be one of
"euclidean"
, "maximum"
, "manhattan"
, "canberra"
, "binary"
or
"minkowski"
. Correlation coefficient can be also used, including
"pearson"
, "spearman"
or "kendall"
. In this way, 1 - cor
will be used
as the distance. In addition, you can also provide a dist
object directly or a function return a dist
object. Use
NULL
, if you don't want to calculate the distance.
A string of the agglomeration method to be used. This should be
(an unambiguous abbreviation of) one of "ward.D"
, "ward.D2"
, "single"
,
"complete"
, "average"
(= UPGMA), "mcquitty"
(= WPGMA), "median"
(=
WPGMC) or "centroid"
(= UPGMC). You can also provide a function which
accepts the calculated distance (or the input matrix if distance
is NULL
)
and returns a hclust
object. Alternative, you can supply
an object which can be coerced to hclust
.
An optional character string giving a method for computing
covariances in the presence of missing values. This must be (an abbreviation
of) one of the strings "everything"
, "all.obs"
, "complete.obs"
,
"na.or.complete"
, or "pairwise.complete.obs"
. Only used when distance
is a correlation coefficient string.
A single boolean value indicating whether to
reorder the dendrogram based on the means. Alternatively, you can provide a
custom function that accepts an hclust
object and the data
used to generate the tree, returning either an hclust
or
dendrogram
object. Default is FALSE
.
A single boolean value, indicates whether we should
merge multiple dendrograms, only used when previous groups have been
established. Default: FALSE
.
A single boolean value, indicates whether we should do
Hierarchical Clustering between groups, only used when previous groups have
been established. Default: FALSE
.
An integer scalar indicates the desired number of groups.
A numeric scalar indicates heights where the tree should be cut.
A function used to cut the hclust
tree. It
should accept four arguments: the hclust
tree object,
distance
(only applicable when method
is a string or a function for
performing hierarchical clustering), k
(the number of clusters), and h
(the height at which to cut the tree). By default,
cutree()
is used.
A boolean value indicates whether plot the dendrogram tree.
A boolean value indicates whether plot the cut height.
A length one string or numeric indicates the root branch.
A boolean value. if TRUE
, nodes are plotted centered with
respect to all leaves/tips in the branch. Otherwise (default), plot them in
the middle of the direct child nodes.
A string indicates the plot type, "rectangle"
or "triangle"
.
The relative size of the plot, can be specified as a
unit()
. Note that for circle_layout()
, all size values
will be interpreted as relative sizes, as this layout type adjusts based on
the available space in the circular arrangement.
A matrix-like object. By default, it inherits from the layout
matrix
.
Logical; if
TRUE
,
removes axes elements for the alignment axis using theme_no_axes()
. By
default, will use the option-
"ggalign.align_no_axes"
.
A active()
object that defines the context settings when
added to a layout.
align_dendro
initializes a ggplot data
and mapping
.
The internal ggplot
object will always use a default mapping of
aes(x = .data$x, y = .data$y)
.
The default ggplot data is the node
coordinates with edge
data attached
in ggalign
attribute, in addition, a
geom_segment
layer with a data frame of the edge
coordinates will be added when plot_dendrogram = TRUE
.
See fortify_data_frame.dendrogram()
for details.
It is important to note that we consider rows as observations, meaning
vec_size(data)
/NROW(data)
must match the number of observations along the
axis used for alignment (x-axis for a vertical stack layout, y-axis for a
horizontal stack layout).
# align_dendro will always add a plot area
ggheatmap(matrix(rnorm(81), nrow = 9)) +
anno_top() +
align_dendro()
ggheatmap(matrix(rnorm(81), nrow = 9)) +
anno_top() +
align_dendro(k = 3L)
Run the code above in your browser using DataLab