Script Writes Correctly, The Graph Still Doesn't Show Up

1 次查看(过去 30 天)
I'm working with k-means in MATLAB. And here is my code:
k=input('Enter a number: ');
[g c] = kmeans(cobat,k,'dist','SqEuclidean');
y = [cobat g]
[s,h]=silhouette(cobat,g,'SqEuclidean') %Show the silhouette graphic
%Show the plot3D graphic
Colors=hsv(k);
PlotClusters(cobat,g,c,Colors)
When I run it, it works anyway, but why " [s,h]=silhouette(cobat,g,'SqEuclidean')" can't be shown?
When I deleted this line: Colors=hsv(k); PlotClusters(cobat,g,c,Colors)
The silhouette graph can be shown.
What should I do so all the graphs can be shown?
Your help means a lot to me, thank you.

采纳的回答

Matt Kindig
Matt Kindig 2013-5-9
Call hold on after your silhouette() call. 'hold on' prevents the current axes from being cleared after each plotting command.
[s,h]=silhouette(cobat,g,'SqEuclidean') %Show the silhouette graphic
hold on;
%Show the plot3D graphic
Colors=hsv(k);
PlotClusters(cobat,g,c,Colors)
doc hold

更多回答(0 个)

类别

Help CenterFile Exchange 中查找有关 2-D and 3-D Plots 的更多信息

标签

Community Treasure Hunt

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

Start Hunting!

Translated by