give name to node in dendrogramm

7 次查看(过去 30 天)
hi guys! I need to rename number-node on the right side of this dendrogramm, how I can do that? tnx!

采纳的回答

Massimo Zanetti
Massimo Zanetti 2016-10-8
Use the 'Labels' property of the dendogram plot. Keep in mind that dendrogram labels any leaves in the dendrogram plot containing a single data point with that data point's label.
For example, assume you have a dendogram with 5 leaves, create a cell that lists {'label 1', 'label 2',...,'label 5'}, and set this cell as argument of 'Labels' property. This will assign 'label 1' to leaf 1, ..., 'label n' to leaf n.
X = rand(5,2);
Y = pdist(X);
Z = linkage(Y,'average');
%create cell of labels
labels = cellstr(num2str((1:size(X,1))', 'label %d'))
%plot dendogram with custom labels
h=dendrogram(Z, 0, 'Labels', labels, 'orientation', 'left');

更多回答(1 个)

Kelly Kearney
Kelly Kearney 2016-10-7
The answer will depend on whether you're showing all the leaves of the dendrogram or not. If yes, then the 'Labels' input will do the trick:
X = rand(50,2);
Y = pdist(X,'cityblock');
Z = linkage(Y,'average');
labels = cellstr(num2str((1:size(X,1))', 'test%d'));
dendrogram(Z, 0, 'Labels', labels, 'orientation', 'left');
If you're truncating the leaves (second input >0 and <size(X,1)), things get a little more complicated, since the above only labels single-node leaves. I've done it, but would have to dig around for the code... so comment if you need that.
  1 个评论
Ben
Ben 2022-10-12
Hi Kelly, I'm trying to get the x-axis labels to work with truncated leaves - do you have the code to share? I realise this is a very old thread!

请先登录,再进行评论。

类别

Help CenterFile Exchange 中查找有关 Axis Labels 的更多信息

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!

Translated by