* * Script to plot a colorbar * * The script will assume a colorbar is wanted even if there is * not room -- it will plot on the side or the bottom if there is * room in either place, otherwise it will plot along the bottom and * overlay labels there if any. This can be dealt with via * the 'set parea' command. In version 2 the default parea will * be changed, but we want to guarantee upward compatibility in * sub-releases. * function colorbar (args) * * Check shading information * 'query shades' shdinfo = result if (subwrd(shdinfo,1)='None') say 'Cannot plot color bar: No shading information' return endif * * Get plot size info * 'query gxinfo' rec2 = sublin(result,2) rec3 = sublin(result,3) rec4 = sublin(result,4) xsiz = subwrd(rec2,4) ysiz = subwrd(rec2,6) ylo = subwrd(rec4,4) xhi = subwrd(rec3,6) xd = xsiz - xhi * * Decide if horizontal or vertical color bar * and set up constants. * if (ylo<0.6 & xd<1.0) say "Not enough room in plot for a colorbar" return endif cnum = subwrd(shdinfo,5) ywid = 0.33 ymid = ylo/2 - 0.2 yt = ymid + 0.2 yb = ymid xmid = xsiz/2+0.5 xwid = 0.7 if (xwid*cnum > xsiz*xwid) xwid = xsiz*xwid/cnum endif xl = xmid - xwid*cnum/2 xr = xl + 0.2 'set string 1 tc 5' vert = 0 * * Plot colorbar * 'set strsiz 0.12 0.13' num = 0 while (num