如何使用MATLAB中的scatter3绘图来可视化具有大量特征的数据集?我已经通过PCA将其简化为三个特征,但如何根据对应行的y值(或标记值)是1还是0来显示不同的颜色?附注:PCA返回一个[675 x 3]的矩阵,表示数据集中675个样本,前三个主成分。
回答:
我对MATLAB的了解不是很新,但我认为你可以先设置hold on
,然后循环遍历并使用plot3绘制矩阵的每一行,并根据标签设置颜色。例如
hold onfor i=1:675, if (label == 1) plot3(mat(i,1), mat(i,2), mat(i,3), '-xr'); elseif (label == 2) plot3(mat(i,1), mat(i,2), mat(i,3), '-og'); elseif (label == 3) plot3(mat(i,1), mat(i,2), mat(i,3), '-b'); endendhold off
这可能需要一些调整,因为我已经有一段时间没有使用MATLAB了。希望对你有帮助 🙂