Colors PROC SGPLOT在组>12时向默认值添加更多颜色

Colors PROC SGPLOT在组>12时向默认值添加更多颜色,colors,sas,Colors,Sas,我正在尝试使用PROC SGPLOT绘制条形图。各组按颜色区分。 下面是我写的代码: proc sgplot data=comb(where=(PFS_weeks ne .)); yaxis discreteorder=data; hbar Pt_Info / response=PFS_weeks group=Diagnosis; 代码运行良好。但是,我有18组,但只有12组是默认组颜色。因此,我的组的颜色将循环为组13中的1种默认颜色 我的问题是,有没有办法增加默认组颜色的数量,以便我的所

我正在尝试使用PROC SGPLOT绘制条形图。各组按颜色区分。 下面是我写的代码:

proc sgplot data=comb(where=(PFS_weeks ne .));
yaxis discreteorder=data;
hbar Pt_Info / response=PFS_weeks group=Diagnosis; 
代码运行良好。但是,我有18组,但只有12组是默认组颜色。因此,我的组的颜色将循环为组13中的1种默认颜色


我的问题是,有没有办法增加默认组颜色的数量,以便我的所有组都可以有不同的颜色?

获得指定颜色的最佳方法是使用属性贴图。如果您不使用它们,您只能使用GRAPHDATAn 1-12颜色,或者使用我强烈推荐的GTL,但这超出了您的需要

创建属性映射数据集,将值映射到颜色或其他属性。即:

data attrs;
input id $ value $ fillcolor $;
datalines;
Diagnosis 1 Blue
Diagnosis 2 Black
Diagnosis 3 Green
Diagnosis 4 Yellow
;;;;
run;
然后你通过

proc sgplot data=comb(where=(PFS_weeks ne .)) attrmap=attrs;
yaxis discreteorder=data;
hbar Pt_Info / response=PFS_weeks group=Diagnosis attrid=Diagnosis;
run;
值的值必须是相关变量的实际标签值;不是基础值,而是标签(如果已进行任何格式化)。另一方面,id不必与分组变量相同

有关更多详细信息,请参阅