MATLAB循环画不同颜色的点方法

在使用聚类算法时,经常需要用不同颜色来表示不同簇的点,用MATLAB怎么画呢?
例如xdata是按列存放的二维点矩阵。Clusters是一个二维矩阵,每一行存放着聚类簇中的点序号(大于0),每个聚类簇中的点数不一定相同,用0补齐。ClusK是聚类算法聚类得到的不同簇(点类)的点的列序号一维矩阵,:

color={'g.','r.','c.','m.','y.','k.'};
for i=1:k
    ClusK=setdiff(Clusters(i,:),0);
    plot(xdata(ClusK,1),xdata(ClusK,2),color{i},'MarkerSize',10)    % MarkerSize 表示点的大小,b.表示蓝色的点
end

这样就能循环画出聚类算法得到的不同类不同颜色的点图了。重点在于color{i},一定要用{},如果用()则会报错提示是cell类型,但是用{},则是string类型。

技术问题可以加QQ:739099538,加好友请备注优快云。
您的小小支持是我持续前进的巨大动力!
在这里插入图片描述

### 如何在 MATLAB 中绘制带有特定颜色MATLAB 中,`plot` 函数可以用来绘制具有指定样式的线条、标记以及颜色的图形。通过设置 `LineSpec` 参数,用户能够定义线型、标记样式和颜色[^1]。 以下是实现绘制带特定颜色的核心方法: #### 使用单个绘图 如果仅需绘制一个单独的并为其指定颜色,则可以通过以下方式完成: ```matlab % 定义的位置 (X, Y) 和颜色 'r' 表示红色 X = 0; Y = 0; color = 'r'; % 可替换为其他颜色字符,如'b'(蓝色), 'g'(绿色) plot(X, Y, '.', 'MarkerSize', 10, 'MarkerFaceColor', color); grid on; % 添加网格以便更清晰观察位置 axis equal; % 设置轴比例相等 ``` 上述代码中的 `'.'` 是用于表示的标记符号,而 `'MarkerFaceColor'` 属性则设定了该颜色填充[^3]。 #### 批量绘制多个彩色 当需要在同一幅图上显示多组不同坐标的时,可利用多次调用 `plot` 或者矩阵形式输入来达成目标[^2]。下面展示了一种简单的方法——分别传入 X 坐标数组与对应的 Y 数组连同各自的颜色设定: ```matlab % 多个的数据及其对应颜色 X_coords = [1, 2, 3]; Y_coords = [4, 5, 6]; colors = {'b', 'g', 'r'}; % 蓝色、绿色、红色依次分配给三个 figure(); hold on; for i = 1:length(X_coords) plot(X_coords(i), Y_coords(i), '.', ... 'MarkerSize', 10, 'MarkerFaceColor', colors{i}); end hold off; grid on; axis([0 4 0 7]); % 自定义坐标范围便于查看效果 legend('Point A', 'Point B', 'Point C'); % 添加图例说明各含义 ``` 此脚本循环遍历每一个要出的,并赋予其独特的色彩表现[^4]。 ### 注意事项 - 颜色选项不仅限于基本字母缩写(如'r','b'),还可以采用 RGB 三元组或者十六进制颜色码提供更加精确的选择。 - 如果希望进一步美化图表外观,比如调整字体大小、增加标题标签等内容,均可以在基础命令之后附加相应属性指令。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

象牙塔小明

您的鼓励是我最大的动力!

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值