matlab三维聚类散点图
时间: 2025-03-04 18:31:52 浏览: 31
### 创建三维聚类散点图
在 MATLAB 中创建三维聚类散点图可以通过多种方法实现,其中一种常用的方式是结合 `kmeans` 函数进行 K 均值聚类并使用 `scatter3` 绘制结果。下面是一个完整的示例代码:
```matlab
% 生成随机数据集作为例子
rng(1); % 设置随机种子以便重复实验
X = [randn(100,3)+ones(100,3); randn(100,3)-ones(100,3)];
% 执行K均值聚类分析
numClusters = 2; % 预设簇的数量
[idx, C] = kmeans(X, numClusters);
% 可视化原始数据分布情况
figure;
subplot(1,2,1);
scatter3(X(:,1), X(:,2), X(:,3));
title('Original Data');
xlabel('Feature 1'); ylabel('Feature 2'); zlabel('Feature 3');
% 使用不同颜色标记各个类别中心以及所属样本点
subplot(1,2,2);
hold on;
for i=1:numClusters
plot3(C(i,1),C(i,2),C(i,3),'o','MarkerSize',8,'LineWidth',2);
end
gscatter(X(:,1), X(:,2), X(:,3), idx);
title('Clustered Data with Centroids');
xlabel('Feature 1'); ylabel('Feature 2'); zlabel('Feature 3');
legend off;
hold off;
```
上述代码首先构建了一个由两个高斯分布组成的合成数据集,并对其进行二分类的 K 均值聚类处理[^2]。
为了更精确地确定合适的簇数,在实际应用中可能还需要考虑其他因素或采用不同的预处理手段,比如先通过层次聚类探索潜在结构[^3]。
阅读全文
相关推荐

















