How can I draw a polar dendrogram over UIAxes in AppDesigner?

1 view (last 30 days)
Hi All, I am trying to draw a polar dendrogram by the following code in the app designer but it does not work because it seems that UIAxes doesn't support polar dendrogram. I tried to set a panel as handle but it showed error. This code works with the "dendrogram" function. Can you please have a look on my code?
X = rand(1000,4);
Z = linkage(X,'ward');
estclustnum = 6; % estimated number of clusters
color = Z(end-estclustnum+2,3)-eps;
app.UIFigure.HandleVisibility = 'on';
set(0, 'CurrentFigure', app.UIFigure);
set(app.UIFigure,'CurrentAxes',app.UIAxes);
polardendrogram(Z,0,'ColorThreshold',color);zoom(app.UIAxes,1);
hold(app.UIAxes,'on');set(app.UIAxes,'XTickLabel',[],'XTick',[]);
app.UIFigure.HandleVisibility = 'off';

Accepted Answer

Eric Delgado
Eric Delgado on 27 Sep 2022
Hey @Mohammad Shahbazy, I know that is an old question, but... maybe the answer help others. :)
dendrogram only works with old figure/axes, but you can use copyobj to deal with it. Below a callback for a button in a simple app.
function ButtonPushed(app, event)
X = rand(10,3);
tree = linkage(X,'average');
fig = figure('Visible', 0);
den = dendrogram(tree);
copyobj(den, app.UIAxes);
delete(fig)
end
You will get something like that...

More Answers (0)

Categories

Find more on Migrate GUIDE Apps in Help Center and File Exchange

Products


Release

R2021a

Community Treasure Hunt

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

Start Hunting!

Translated by