You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Matlab实现10类别数据集散点图差异化着色的最简方法问询

在Matlab中实现10类数据多色可视化的最简方法

问得好!给你分享个超省心的方案,比你手动逐个绘制类别高效太多啦!

Matlab自带的gscatter函数专门用来做分类散点图,一行代码就能搞定你10类数据的可视化需求——它会自动给不同类别分配差异化的颜色和标记,还能自动生成图例,完全不用你手动处理每个类别:

gscatter(data(:,1), data(:,2), labels);

参数说明很直观:

  • data(:,1):数据集的第一列(作为x轴数据)
  • data(:,2):数据集的第二列(作为y轴数据)
  • labels:你的10分类标签数组(1到10的整数)

如果想要更灵活的自定义(比如指定标记样式、颜色板),也可以结合循环和colormap实现:

% 生成10种区分度高的颜色,可选jet、hsv、parula等色板
colors = colormap(jet(10));
hold on;
% 遍历每个类别
for class_idx = 1:10
    % 筛选当前类别的数据
    current_data = data(labels == class_idx, :);
    % 用对应颜色绘图,可自定义标记(比如*、o、s等)
    plot(current_data(:,1), current_data(:,2), '*', 'Color', colors(class_idx,:), ...
         'DisplayName', ['Class ', num2str(class_idx)]);
end
hold off;
legend; % 显示类别图例

但毫无疑问,gscatter是最简便的方案,完美适配你的10分类场景,省去了写循环和手动配置颜色的麻烦~

内容的提问来源于stack exchange,提问作者Forrest

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.25 06:54:18