MathGroup Archive 2007

[Date Index] [Thread Index] [Author Index]

Search the Archive

Re: format mixed integers & floats with text styling (see )

  • To: mathgroup at smc.vnet.net
  • Subject: [mg82254] Re: format mixed integers & floats with text styling (see )
  • From: Ray Koopman <koopman at sfu.ca>
  • Date: Tue, 16 Oct 2007 03:30:14 -0400 (EDT)
  • References: <fesqmo$pdc$1@smc.vnet.net>

On Oct 14, 3:23 am, Murray Eisenberg <mur... at math.umass.edu> wrote:
> Two years ago in  I posed this problem of formatting a table
> column having a mixture of integers and approximate numbers in such a
> way that the decimal point on the floats would be vertically aligned
> with the implied decimal on the integers.
>
> For example, here's the data for the table:
>
>     statNames = {"N", "Max", "Min", "Mean", "Std.dev.", "Median"};
>     statNumbers = {40, 103, 2, 56.8, 22.5, 59};
>
> The object was to combine these into a properly formatted table starting
> from:
>
>     (* original table *)
>     TableForm[Transpose[{statNames,statNumbers}]]
>
> A good solution was proposed by Valeri Astanoff (sorry, I don't have the
> message reference number):
>
>    pad[x_Integer]:=PaddedForm[x,3];
>    pad[x_Real]:=PaddedForm[x,4];
>
>    (* aligned table *)
>    TableForm[Transpose[{statNames, pad /@ statNumbers}]]
>
> Now I need to complicate the problem by putting everything in a
> non-default font, by using, e.g.,
>
>    fmtTxt[txt_]:=Style[txt, FontFamily -> "Arial",FontSize->12]
>
> so that the TableForm expression is changed to:
>
>    (* formatted table *)
>    TableForm[Transpose[{fmtTxt/@statNames, fmtTxt/@ pad /@ statNumbers}]]
>
> Unfortunately, this now breaks the nice vertical alignment.  How can the
> alignment of "aligned table" be restored but still use such text formatting?
>
> --
> Murray Eisenberg                     mur... at math.umass.edu
> Mathematics & Statistics Dept.
> Lederle Graduate Research Tower      phone 413 549-1020 (H)
> University of Massachusetts                413 545-2859 (W)
> 710 North Pleasant Street            fax   413 545-1801
> Amherst, MA 01003-9305

The suggestion I made two years ago in

http://forums.wolfram.com/mathgroup/archive/2005/Oct/msg00548.html

seems to work just fine with Times changed to Arial:

myForm[x_Integer,{n_,f_}] := ToString@PaddedForm[x, n-f ];
myForm[x_,       {n_,f_}] := ToString@PaddedForm[x,{n,f}];

StyleForm[TableForm[Transpose[{statNames, StringReplace[
          myForm[#,{4,1}]," "->"  "]&/@statNumbers}]],
          FontFamily->"Arial"]



  • Prev by Date: Re: Re: Compile forgets assigned values inside Do unless they are initialised
  • Next by Date: Re: Re: Manipulator Import in Powerpoint
  • Previous by thread: format mixed integers & floats with text styling (see )
  • Next by thread: Re: Re: format mixed integers & floats with text styling