第四个论点gscatter
是颜色规格。根据文档 http://es.mathworks.com/help/stats/gscatter.html,只能使用字母来定义颜色:
gscatter(x,y,group,clr,sym,siz)
指定每个组的颜色、标记类型和大小。clr
是由颜色识别的字符串数组plot
功能。默认为clr
is 'bgrcmyk'
.
但如果你输入open gscatter
并查看第一行中的注释(Matlab 的旧式帮助 https://stackoverflow.com/questions/28953661/get-old-style-help-in-matlabs-command-window), 惊喜!
GSCATTER(X,Y,G,CLR,SYM,SIZ) 指定颜色、标记和
使用的尺寸。 CLR 是一串颜色规范or
颜色规格的三列矩阵.
因此,您可以使用颜色图矩阵来定义您想要的颜色(至少在 Matlab R2014b 中)。
Example:
load discrim
group(1:3:end) = 3; %// borrowing Benoit_11's idea to create two more groups
group(2:2:end) = 4;
cmap = hsv(4); %// define your colormap here
gscatter(ratings(:,1), ratings(:,2), group, cmap)
EDIT:在较新的 Matlab 版本(我检查了 R2019a)中,文档确实提到了将颜色指定为三列矩阵的可能性:
clr
:标记颜色:颜色的字符向量或字符串标量 |RGB 三元组值矩阵.