Matlab で FPrintF を使用してテーブルを印刷する方法

Matlab でテーブルを印刷しても、テーブルが印刷された形できれいに見えるとは限りません。 Matlab の fprintf 関数を使用して、テーブルの印刷出力を美しくします。 fprintf 内に含めるステートメント (boxSizeTable 関数から始まる) を使用すると、列ラベルを追加したり、テーブル ディメンションを設定したり、テーブル変数をフォーマットしたりして、テーブル情報の外観とフォーマットを完全に制御できます。テーブル情報を分析し、ラベルを決定し、必要に応じて、Matlab での fprintf の使用を容易にするスケッチを描きます。
ステップ 1
Matlab を開き、Matlab メイン メニューの [ウィンドウ] タブから [新規] を選択して、新しいプロジェクトを開始します。
ステップ 2
1 行目に「function boxSizeTable」と入力し、2 行目に「% このテーブルは fprintf による印刷を示します」などのコメントを追加して、テーブルの目的を特定します。
ステップ 3
列ラベルと行識別子を設定し、各セルに含まれる内容を指定して、テーブル情報を識別します。たとえば、配送ボックスの利用可能なサイズを示す表の場合、次のように入力します:
label =char('小','中','大');幅 =[5; 5; 10];高さ =[5; 8; 15];深さ =[15; 15; 20]; % 体積は立方メートルで測定されます vol =width._height._depth/10000;
ステップ 4
テーブルにタイトルを付けて fprintf 関数を開始します。関数とタイトルを特定し、次のコード行をすぐに処理するように Matlab に指示する特殊文字 "\n'" でステートメントを終了します。
fprintf('\n配送ボックスのサイズ\n\n');
ステップ 5
2 番目の fprintf ステートメントを追加して、行識別子を出力し、コードの次の行に移動します。
fprintf('size width height depth volume\n');
ステップ 6
追加の fprintf ステートメントを入力して、テーブルの書式設定を完了します。たとえば、このテーブルでは、テーブルの測定値がインチではなくセンチメートルであることを読者に通知するように fprintf に指示するステートメントを 1 つ追加します。
fprintf(' (cm) (cm) (cm) (m^3)\n');
ステップ 7
フィールド幅の間隔を追加し、変換コードを使用してテキストと数値をフォーマットし、指定したすべての情報が印刷されるまで印刷を続けるように fprintf に指示する "for" ループを追加して、フォーマットを終了します。たとえば、「8s」は fprintf に 8 文字のスペースを許可し、行を文字列としてフォーマットするよう指示しますが、「8d」は 8 文字のスペースを許可し、行を整数としてフォーマットするように fprintf に指示します。
for i=1:length(width) fprintf('%-8s %8d %8d %8d %9.5f\n',... label(i,:),width(i),height(i),depth( i),vol(i))
ステップ 8
結果を保存して画面に表示するか、メイン メニューの [ファイル] タブから [印刷] を選択して結果を紙に印刷します。
ヒント
Tab キーを使用して新しい行に移動するのではなく、常に「Enter」を押してください。
パーセント記号で始めて、印刷されないコメント行を識別します。