Hi,

I have a question concerning heatmaps. Using proc template and proc sgrender, I would like to have a panel of four heatmaps, but doing so, it recomputes the colour response independently for each heatmap, so heatmaps can not be compared. I would like a single scale for all heatmaps. Is there a way to do so ? My codes are :

proc template; /* basic heat map with continuous color ramp */
define statgraph heatmap;
begingraph;
layout lattice/ columns=2 rows=2 rowgutter=10 columngutter=10;
layout overlay
heatmapparm x=order y=trader colorresponse=v1 / /* specify variables at run time */
name="heatmap1" primary=true
xbinaxis=false ybinaxis=false colormodel=(white red darkred)
XENDLABELS=false;
continuouslegend "heatmap1" ;
endlayout;

layout overlay ;
heatmapparm x=order y=trader colorresponse=v2 / /* specify variables at run time */
name="heatmap2" primary=true
xbinaxis=false ybinaxis=false colormodel=(white red darkred)
XENDLABELS=false; /* tick marks based on range of X and Y */
continuouslegend "heatmap2" / location=outside /*valign=bottom*/;
endlayout;

layout overlay /*
xaxisopts=(display=(line ticks tickvalues))
yaxisopts=(display=(line ticks tickvalues))*/;
heatmapparm x=order y=trader colorresponse=V3 / /* specify variables at run time */
name="heatmap3" primary=true
xbinaxis=false ybinaxis=false colormodel=(white red darkred)
XENDLABELS=false; /* tick marks based on range of X and Y */
continuouslegend "heatmap3" / location=outside /*valign=bottom*/;
endlayout;

layout overlay /*
xaxisopts=(display=(line ticks tickvalues))
yaxisopts=(display=(line ticks tickvalues))*/;
heatmapparm x=order y=trader colorresponse=V4 / /* specify variables at run time */
name="heatmap4" primary=true
xbinaxis=false ybinaxis=false colormodel=(white red darkred)
XENDLABELS=false; /* tick marks based on range of X and Y */
continuouslegend "heatmap4" / location=outside /*valign=bottom*/;
endlayout;

endlayout;

endgraph;
end;
run;

proc sgrender data=all template=heatmap;
run;

Thanks

Philippe