Main Content

dendrogram

Descripción

ejemplo

dendrogram(tree) genera un dendrograma del árbol de clusters binario y jerárquico. Un dendrograma consiste en varias líneas con forma de U que conectan puntos de datos en un árbol jerárquico. La altura de cada U representa la distancia entre los dos puntos de datos que se conectan.

  • Si hay 30 puntos de datos o menos en el conjunto de datos original, cada hoja del dendrograma corresponde a un punto de datos.

  • Si hay más de 30 puntos de datos, dendrogram contrae las ramas inferiores para que haya 30 nodos hoja. Como resultado, algunas hojas de la gráfica corresponden a más de un punto de datos.

ejemplo

dendrogram(tree,Name,Value) utiliza más opciones especificadas por uno o más argumentos de par nombre-valor.

ejemplo

dendrogram(tree,P) genera un dendrograma con no más de P nodos hoja. Si hay más de P puntos de datos en el conjunto de datos original, dendrogram contrae las ramas inferiores del árbol. Como resultado, algunas hojas de la gráfica corresponden a más de un punto de datos.

dendrogram(tree,P,Name,Value) utiliza más opciones especificadas por uno o más argumentos de par nombre-valor.

dendrogram(ax,___) usa los ejes de la gráfica especificados por el objeto de ejes ax. Especifique ax como primer argumento de entrada, seguido de cualquier combinación de argumentos de entrada de las sintaxis anteriores.

ejemplo

H = dendrogram(___) genera un dendrograma y devuelve un vector de identificadores de línea. Puede utilizar cualquiera de los argumentos de entrada de las sintaxis anteriores.

ejemplo

[H,T,outperm] = dendrogram(___) también devuelve un vector que contiene el número de nodo hoja para cada objeto en el conjunto de datos original, T, y un vector que proporciona el orden de las etiquetas de los nodos de las hojas como se muestra en el dendrograma, outperm.

  • Es útil devolver T cuando el número de nodos hoja, P, es inferior al número total de puntos de datos, de modo que algunos nodos hoja de la visualización corresponden a varios puntos de datos.

  • El orden de las etiquetas de los nodos proporcionados en outperm es de izquierda a derecha para un dendrograma horizontal y de abajo arriba para un dendrograma vertical.

Ejemplos

contraer todo

Genere datos de muestra.

rng('default') % For reproducibility
X = rand(10,3);

Cree un árbol de clusters binario y jerárquico utilizando linkage. Luego, represente el dendrograma utilizando las opciones predeterminadas.

tree = linkage(X,'average');

figure()
dendrogram(tree)

Genere datos de muestra.

rng('default') % For reproducibility
X = rand(10,3);

Cree un árbol de clusters binario y jerárquico utilizando linkage.

tree = linkage(X,'average');

D = pdist(X);
leafOrder = optimalleaforder(tree,D)
leafOrder = 1×10

     3     7     6     1     4     9     5     8    10     2

Represente el dendrograma utilizando un orden de hojas óptimo.

figure()
dendrogram(tree,'Reorder',leafOrder)

El orden de los nodos hoja en el dendrograma corresponde, de izquierda a derecha, a la permutación en leafOrder.

Genere datos de muestra.

rng('default') % For reproducibility
X = rand(100,2);

Hay 100 puntos de datos en el conjunto de datos original, X.

Cree un árbol de clusters binario y jerárquico utilizando linkage. Luego, represente el dendrograma para el árbol completo (100 nodos hoja) estableciendo el argumento de entrada P igual a 0.

tree = linkage(X,'average');
dendrogram(tree,0)

Después, represente el dendrograma con solo 25 nodos hoja. Devuelva la aplicación de los puntos de datos originales a los nodos hoja mostrados en la gráfica.

figure
[~,T] = dendrogram(tree,25);

Enumere los puntos de datos originales que se encuentran en el nodo hoja 7 del dendrograma.

find(T==7)
ans = 7×1

     7
    33
    60
    70
    74
    76
    86

Genere datos de muestra.

rng('default') % For reproducibility
X = rand(10,3);

Cree un árbol de clusters binario y jerárquico utilizando linkage. Luego, represente el dendrograma con una orientación vertical, utilizando el umbral de color predeterminado. Devuelva los identificadores a las líneas para poder cambiar la anchura de las líneas del dendrograma.

tree = linkage(X,'average');
H = dendrogram(tree,'Orientation','left','ColorThreshold','default');
set(H,'LineWidth',2)

Argumentos de entrada

contraer todo

Árbol de clusters binario y jerárquico, especificado como una matriz (M– 1)-por 3 que se genera utilizando linkage, donde M es el número de puntos de datos del conjunto de datos original.

Número máximo de nodos hoja que se desean incluir en el dendrograma, especificado como un valor entero positivo.

  • Si hay P puntos de datos o menos en el conjunto de datos original, cada hoja del dendrograma corresponde a un punto de datos.

  • Si hay más de P puntos de datos, dendrogram contrae las ramas inferiores para que haya P nodos hoja. Como resultado, algunas hojas de la gráfica corresponden a más de un punto de datos.

    Si no se especifica P, dendrogram utiliza 30 como número máximo de nodos hoja. Para visualizar el árbol completo, establezca P igual a 0.

Tipos de datos: single | double

Los ejes de la gráfica, especificados como un objeto Axes o UIAxes. Si no especifica ax, dendrogram crea la gráfica utilizando los ejes actuales. Para obtener más información sobre la creación de un objeto de ejes, consulte axes y uiaxes.

Argumentos de par nombre-valor

Especifique pares de argumentos opcionales Name1=Value1,...,NameN=ValueN, donde Name es el nombre del argumento y Value es el valor correspondiente. Los argumentos nombre-valor deben aparecer después de otros argumentos, pero el orden de los pares no importa.

En versiones anteriores a R2021a, use comas para separar cada nombre y valor y encierre Name entre comillas.

Ejemplo: 'Orientation','left','Reorder',myOrder especifica un dendrograma vertical con hojas en el orden especificado por myOrder.

Orden de los nodos hoja en el dendrograma, especificado como el par separado por comas formado por 'Reorder' y un vector que da el orden de los nodos en el árbol completo. El vector de orden debe ser una permutación del vector 1:M, donde M es el número de puntos de datos del conjunto de datos original. Especifique el orden de izquierda a derecha para los dendrogramas horizontales y de abajo arriba para los dendrogramas verticales.

Si M es mayor que el número de nodos hoja en el dendrograma, P (de forma predeterminada, P es 30), solo puede especificar un vector de permutación que no separe los grupos de hojas que corresponden a nodos contraídos.

Tipos de datos: single | double

Indicador de si se debe comprobar si hay ramas cruzadas en el dendrograma, especificado como el par separado por comas formado por 'CheckCrossing' y true o false. Esta opción solo es útil cuando se especifica un valor para Reorder.

Cuando CheckCrossing tiene el valor true, dendrogram emite una advertencia si el orden de los nodos hoja provoca ramas cruzadas en la gráfica. Si el dendrograma no muestra un árbol completo (porque el número de puntos de datos en el conjunto de datos original es mayor que P), dendrogram solo emite una advertencia cuando el orden de los nodos hoja hace que se crucen las ramas en el dendrograma como se muestra en la gráfica. Es decir, no habrá ninguna advertencia si el orden provoca el cruce de ramas en el árbol completo, pero no en el dendrograma como se muestra en la gráfica.

Tipos de datos: logical

Umbral para colores únicos en el dendrograma, especificado como el par separado por comas formado por 'ColorThreshold' y 'default' o un valor escalar en el rango (0,max(tree(:,3))). Si ColorThreshold tiene el valor T, dendrogram asigna un color único a cada grupo de nodos del dendrograma cuyo enlace sea inferior a T.

  • Si ColorThreshold tiene el valor 'default', el umbral, T, es el 70% del enlace máximo, 0.7*max(tree(:,3)).

  • Si no especifica un valor para ColorThreshold o si especifica un umbral fuera del rango (0,max(tree(:,3))), dendrogram utiliza un solo color para el dendrograma.

Orientación del dendrograma en la ventana de figuras, especificada como el par separado por comas formado por 'Orientation' y uno de estos valores:

'top'De arriba abajo
'bottom'De abajo arriba
'left'De izquierda a derecha
'right'De derecha a izquierda

Etiqueta para cada punto de datos del conjunto de datos original, especificada como el par separado por comas formado por 'Labels' y un arreglo de caracteres, un arreglo de cadenas o un arreglo de celdas de vectores de caracteres. dendrogram etiqueta cualquier hoja del dendrograma que contenga un único punto de datos con la etiqueta de ese punto de datos.

Contenedor principal, especificado como objeto Figure o Panel. Para obtener más información sobre las propiedades de este objeto, consulte Figure Properties y Panel Properties.

Argumentos de salida

contraer todo

Identificadores a líneas en el dendrograma, devueltos como un vector.

Números de nodos hoja para cada punto de datos del conjunto de datos original, devueltos como un vector columna de longitud M, donde M es el número de puntos de datos en el conjunto de datos original.

Cuando hay menos de P puntos de datos en los datos originales (de forma predeterminada, P es 30), todos los puntos de datos se muestran en el dendrograma y cada nodo contiene un único punto de datos. En este caso, T es el mapa de identidad, T = (1:M)'.

T es útil cuando P es menor que el número total de puntos de datos. Es decir, cuando algunos nodos hoja en la visualización del dendrograma corresponden a múltiples puntos de datos. Por ejemplo, para averiguar qué puntos de datos contiene el nodo hoja k del dendrograma, utilice find(T==k).

Permutación de las etiquetas de los nodos de las hojas del dendrograma como se muestra en la gráfica, devuelta como un vector fila. outperm da el orden de izquierda a derecha para un dendrograma horizontal y de abajo arriba para un dendrograma vertical. Si hay P hojas en el dendrograma, outperm es una permutación del vector 1:P.

Historial de versiones

Introducido antes de R2006a