Из документации Matlab :
scatter (X, Y, S, C) отображаются цветные круги в местах, указанных векторами X и Y (которые должны бытьодинакового размера).
S определяет область каждого маркера (указана в точках ^ 2).S может быть вектором такой же длины, как X и Y или скаляр.Если S - скаляр, MATLAB рисует все маркеры одинакового размера.Если S пусто, используется размер по умолчанию.
C определяет цвет каждого маркера.Когда C является вектором такой же длины, как X и Y, значения в C линейно отображаются на цвета в текущей цветовой карте.Когда C представляет собой матрицу размером 1 на 3, она определяет цвета маркеров как значения RGB.Если у вас есть 3 точки на диаграмме рассеяния и вы хотите, чтобы цвета были индексами в цветовой карте, C должен быть матрицей 3 на 1.C также может быть строкой цвета (см. ColorSpec для списка спецификаторов строки цвета).
Так, например, скажем, что ваши кластеры задаются столбцами матриц X и Y, сk-й столбец - это k-й кластер, X - координаты X, а Y - координаты Y.Мы можем сделать то, что вы хотите, следующим образом:
% make some random data in clusters:
n = 15;
m = 42;
X = 0.2*rand(m,n) + repmat(rand(1,n),m,1);
Y = 0.2*rand(m,n) + repmat(rand(1,n),m,1);
% lets change the colour map:
colormap(jet);
% now plot each, one at a time, and each with a different colour:
hold on;
for k=1:n
scatter(X(:,k),Y(:,k),40,k/n*ones(m,1));
end
Если вам не нравятся эти цвета, вы можете изменить цветовую карту, а если вам не нравятся цветные карты, вы можете, как и другиеответ указывает, вставьте любые значения RGB, которые вы хотите.