数値の出力書式

ScientificForm[expr]数値を科学表記で表示する
EngineeringForm[expr]数値を工学表記で表示する(指数部が3の整数倍の値になるように仮数部の小数点位置が調整される)
AccountingForm[expr]数値を会計表記で表示する

数値の特殊表記

出力にはデフォルトの書式が使われる.数値が大きければ科学表記が使われる.
In[1]:=
Click for copyable input
Out[1]=
すべての数値を科学表記で表示する.
In[2]:=
Click for copyable input
Out[2]//ScientificForm=
今度は,工学表記で表示する.指数部が3の整数倍になるように仮数部が調整される.
In[3]:=
Click for copyable input
Out[3]//EngineeringForm=
会計表記では,負の数値は丸カッコでくくられる.科学表記は全く使われない.
In[4]:=
Click for copyable input
Out[4]//AccountingForm=
NumberForm[expr,tot]expr にある近似実数を最長で tot 桁まで表示する
ScientificForm[expr,tot]expr にある近似実数を最長で tot 桁まで科学表記で表示する
EngineeringForm[expr,tot]expr にある近似実数を最長で tot 桁まで工学表記で表示する

実数表示精度の指定

の実数値を30桁精度で表示する.
In[5]:=
Click for copyable input
Out[5]=
今度は の10桁分だけ表示する.
In[6]:=
Click for copyable input
Out[6]//NumberForm=
12桁精度の工学表記で表示する.
In[7]:=
Click for copyable input
Out[7]//EngineeringForm=
オプション
デフォルト値
DigitBlockInfinityコンマ等の区切り記号を挿入する桁の間隔を指定する
NumberSeparator{","," "}小数点以上の位の桁と以下の位の間隔を区切る記号を指定する
NumberPoint"."小数点を表す記号を指定する
NumberMultiplier"\[Times]"科学表記における乗算記号を指定する
NumberSigns{"-",""}負と正の符号記号を指定する
NumberPadding{"",""}表示長を合わせるために,符号に続けて短すぎる数値にあてがう記号を指定する
SignPaddingFalse符号の後にスペースを入れるかどうか指定する
NumberFormatAutomatic数値(仮数部)の出力書式を指定する
ExponentFunctionAutomatic指数部の出力書式を指定する

数値の表示仕様のオプション

最終の項目を除く,テーブルにあるすべてのオプションは,整数と近似実数の両方に適用される.

上記のオプションはNumberFormScientificFormEngineeringFormAccountingFormの表記変換関数のどれにでも使える.実際に,表記法に応じて個別に表示仕様を変えることも可能である.表に記載したデフォルト値はNumberFormのものである.

DigitBlock->n で桁の間隔を (ここでは3)にして階乗の値を見やすくする.
In[8]:=
Click for copyable input
Out[8]//NumberForm=
区切り記号はなんでもよい.ここでは,スペース(空白)を使ってみる.
In[9]:=
Click for copyable input
Out[9]//NumberForm=
正の値にはプラスの符号を付け,小数点の位置にはピリオドの代りに垂直バー()を使ってみよう.
In[10]:=
Click for copyable input
Out[10]//NumberForm=

実数の表示では,科学表記を使うか使わないかがまず選択される.使うのであれば続いて,小数点以下何桁まで表示するかが決定される.Mathematica 内部では次の手順で表示様式が決定される.まず,数値を科学表記で記述してみて,そのとき,どのような指数部が生じるかを見る.次に,小数点の左側に桁1つ分のスペースを挿入する.さらに,指数部にExponentFunctionで指定されている変換関数を適用し,実際に表示する形に変換する.このとき,科学表記が使われていなければ,指数部はNull(空)とみなされる.

実数がどう表示されるか見てみよう.特に指定していない場合,指数部がからの範囲以外にある場合は科学表記が使われることになっている.
In[11]:=
Click for copyable input
Out[11]=
指数部が10以上の値のときだけ科学表記を採用する記述.
In[12]:=
Click for copyable input
Out[12]//NumberForm=
指数部を3の整数倍になるように調整する.
In[13]:=
Click for copyable input
Out[13]//NumberForm=

表示したい数の仮数部と指数部を決定したなら,残る最後のステップは,両方の部分を組み合せ最終的に表示する単一オブジェクトを生成することである.ここで,数値の表示書式を任意の形に変えたいときは,オプションNumberFormatを使い書式処理に必要な関数を指定しておく.その関数には,実行時の引数として仮数部,底,指数部の数値の3つの要素が入力されることになっている.指数部を取らない場合はとしておく.

Fortran的な「e」形式で指数部をカスタム表示する.
In[14]:=
Click for copyable input
Out[14]//NumberForm=
FortranFormを作用させ正式なFortran形式で数値を表示することも可能である.
In[15]:=
Click for copyable input
Out[15]//FortranForm=
PaddedForm[expr,tot]式にある数のすべてを tot 桁まで表示し,桁数が足りなければ数の手前にスペースを充填して表示長を揃える
PaddedForm[expr,{tot,frac}]式にある数のすべてを tot 桁まで表示し,小数点以下は frac 桁まで表示し,桁数が足りなければ数の手前にスペースを充填して表示長を揃える
NumberForm[expr,{tot,frac}]式にある数のすべてを最高で tot 桁まで表示し,小数点以下は frac 桁まで表示する
Column[{expr1,expr2,...}] を左揃えで上から下へ1列で表示する

数値表示における表示桁位置の指定

複数の数値を縦1列に表示,もしくは,表形式で表示するとき,個々の数値の桁位置を合わせておくと見やすくなってよい.例えば,表示したい領域において,各数値の位が同じ位置にくるように設定する.

位の位置合せのため,数値の直前と直後に「空白文字(パッド)」を適当に挿入して表示長を調整できるようになっている.通常は,小数点以下の桁が足りなければ,数値の直後(右端)にゼロが付け足される.また,小数点以上の桁の場合は,数値の手前(左端)にスペースがあてがわれる.

表示長を揃えてみよう.スペースがあてがわれ,7桁分の表示長が確保される.
In[16]:=
Click for copyable input
Out[16]//PaddedForm=
整数のリストを1列に並べて表示してみる.
In[17]:=
Click for copyable input
Out[17]//PaddedForm=
全表示桁数を7桁とし,その内4桁分を小数点以下の表示に回す.
In[18]:=
Click for copyable input
Out[18]//PaddedForm=
NumberFormで同じ指定をする.NumberFormでは表示桁長が足りなくてもスペースの充填は行われない.
In[19]:=
Click for copyable input
Out[19]//NumberForm=
SignPadding->Trueとすると符号の後にスペースが挿入されるようになる.
In[20]:=
Click for copyable input
Out[20]//PaddedForm=
科学表記が使われるときは,仮数部だけに桁長の調整が施される.
In[21]:=
Click for copyable input
Out[21]//PaddedForm=

NumberPaddingのデフォルト設定で関数NumberFormPaddedFormを使った場合,数値の右側にパッドを入れようとすればゼロが充填される.ここで,左右に充填するものとしてスペースを使いたい場合は,NumberPadding->{" ", " "}と指定する.

数値の右にゼロの代りにスペースをあてがうよう指定する.
In[22]:=
Click for copyable input
Out[22]//PaddedForm=
BaseForm[expr,b]式に対する数値を底 b に変換し表示する

数値表示における底の変換

入力値を2進法で表示する.
In[23]:=
Click for copyable input
Out[23]//BaseForm=
16進法で表示する.10進法以上の場合は,9より大きい数はアルファベットが使われる.
In[24]:=
Click for copyable input
Out[24]//BaseForm=
実数にもBaseFormは使える.
In[25]:=
Click for copyable input
Out[25]//BaseForm=
科学表記の実数にも使える.
In[26]:=
Click for copyable input
Out[26]//BaseForm=

任意の底における数値の入力法と,数値の各位の数字をリストアップする方法は「数の桁」で説明する.必要ならばそちらを参照のこと.

New to Mathematica? Find your learning path »
Have a question? Ask support »