I am sure that I can avoid the Do loop in this code. It works but I want to "translate" the numerical matrix to a categorical one.
Is there a way to map the numerical matrix RES_T to its char sibling RES_T_CH by using the DESC matrix?
PROC IML;
X=1 : 8;
Y=1:10;
RES=T(Y)*X;
LABLX=CHAR(X);
LABLY=CHAR(Y);
R=PALETTE("BLUES",4);
RES2=(MOD(RES,2)=0);
RES4=(MOD(RES,4)=0);
RES8=(MOD(RES,8)=0);
RES_T=RES2+RES4+RES8;
DESC={"no divideix ni per 2, ni 4, ni 8" "divideix per 2" "divideix per 4" "divideix per 8"};
/*print desc;*/
RES_T_CH=J(10,8, " ");
DO I=1 TO NROW(RES)*NCOL(RES);
RES_T_CH[I]=DESC[RES_T[I]+1];
END;
CALL HEATMAPDISC(RES_T_ch, R) TITLE="tasca multiplicar per 2,4 i 8" DISPLAYOUTLINES=1 SHOWLEGEND=1;