聚类分析 | MATLAB实现基于LP拉普拉斯映射的聚类可视化
效果一览
基本介绍
基于DBSCAD密度聚类算法可视化,MATLAB程序。
使用带有KD树加速的dbscan_with_kdtree函数进行密度聚类。然后,我们根据每个簇的编号使用hsv色彩映射为每个簇分配不同的颜色,并用散点图进行可视化展示。同时,我们用黑色的"x"标记表示噪声点。请注意,DBSCAN的性能高度依赖于选择合适的epsilon和minPts参数。在实际应用中,你可能需要根据数据的特点进行调整,以获得更好的聚类结果。
从Excel表格中读取,直接替换数据就可以使用,不需要对程序大幅度改动。程序内有详细注释,便于理解程序运行。
程序设计
- 完整源码和数据获取方式:私信回复MATLAB实现基于DBSCAD密度聚类算法可视化。
%% 清空环境变量
warning off % 关闭报警信息
close all % 关闭开启的图窗
clear % 清空变量
clc % 清空命令行
cosD = pdist(meas,'cosine');
clustTreeCos = linkage(cosD,'average');
cophenet(clustTreeCos,cosD)
ans =
0.9360
[h,nodes] = dendrogram(clustTreeCos,0);
h_gca = gca;
h_gca.TickDir = 'out';
h_gca.TickLength = [.002 0];
h_gca.XTickLabel = [];
————————————————
版权声明:本文为CSDN博主「机器学习之心」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kjm13182345320/article/details/119920826
figure
hidx = cluster(clustTreeCos,'criterion','distance','cutoff',.006);
for i = 1:5
clust = find(hidx==i);
plot3(meas(clust,1),meas(clust,2),meas(clust,3),ptsymb{i});
hold on
end
hold off
xlabel('Sepal Length');
ylabel('Sepal Width');
zlabel('Petal Length');
view(-137,10);
grid on
————————————————
版权声明:本文为CSDN博主「机器学习之心」的原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接及本声明。
原文链接:https://blog.csdn.net/kjm13182345320/article/details/119920826
参考资料
[1]
https://blog.csdn.net/kjm13182345320/article/details/129215161
[2]
https://blog.csdn.net/kjm13182345320/article/details/128105718