function strcolumn,number,param2,param3,fill if n_params() le 2 then begin if (size(number,/type) ge 4) and (size(number,/type) le 6) then begin digits=strsplit(string(number),'.',/extract) while strmid(digits[1],0,/reverse_offset) eq '0' do digits[1]=strmid(digits[1],0,strlen(digits[1])-1) digits=strlen(digits[1]) endif else digits=0 if n_params() eq 1 then length=0 else length=param2 endif else begin digits=param2 length=param3 endelse if n_params() lt 4 then fill=' ' if size(number,/type) ne 7 then begin number=strsplit(strcompress(string(round(number*10^digits)/double(10^digits)),/remove_all),'.',/extract) number[1]=strmid(number[1],0,digits) if number[1] eq '' then number=number[0] else number=number[0]+'.'+number[1] endif else number=strtrim(number,2) if strlen(number) ge length then output=number else begin output='' for i=0,(length-strlen(number))/strlen(fill) do output=output+fill output=strmid(output+number,length-1,/reverse_offset) endelse return,output end