为绘图/散点图分配不同的颜色

Assigning Different Colors to a Plot / Scatter

所以我有一个名为 C1_Vector 的矢量,之前已经用 1 种 RGB 颜色 ([0 0.5 1])、蓝色的不同阴影填充。所以 C1_Vector

中有许多不同的向量

例如:

C1_Vector = ([0 0.5 1], [0 0.45 0.98], [0 0.49 1.01], etc.)

我希望我的每个点在s1中对应不同的颜色。这就是我一直在玩弄和挣扎的东西。有人可以帮我解决这个语法问题吗?

plot(s1(1,:),s1(2,:),'.', 'color', C1_Vector );

其中,

s1 =

3.0000    3.0000    3.0000    1.5000    1.5000    1.5000         0   -1.5000
1.5000         0   -1.5000    1.5000         0   -1.5000         0    3.0000

使用 scatter 函数可以非常容易,只要您提供与要绘制的元素相同数量的颜色向量即可。

基本上为每对要显示的点分配提供的颜色矩阵中相应的颜色,即M x 3,其中M是点的数量。

因此,对于演示,我向 C1_Vector 添加了颜色,以便它包含与 s1.

一样多的元素
C1_Vector = [0 0.5 1; 0 0.45 0.98; 0 0.49 1.01;1 0 1; rand(1,3); 0 1 0; 0 1 1;rand(1,3)];

s1 = [3.0000    3.0000    3.0000    1.5000    1.5000    1.5000         0 -1.5000;
1.5000         0   -1.5000    1.5000         0   -1.5000         0    3.0000];

scatter(s1(1,:),s1(2,:),[],C1_Vector,'filled')
grid on

输出:

你是这个意思吗?