4

編集:上記の質問は、与えられた例で示されているように、MATLAB が対話型セッションで既定で生成する出力に厳密に関係しています。スクリプト、関数、メソッドなどによって生成される出力の外観を変更する方法には興味がありません。

また、これの動機は、実際に有益な出力のために、ラップトップの非常に希少な「画面領域」をより多く保持することです。


を使用してもformat compact、MATLAB の出力には、ans =適切な出力を示す行に加えて行が含まれます。例えば

>> format compact
>> date
ans =
04-Sep-2012
>> 

ans =たとえば、上記の最後のやり取りが次のようになるように、行を抑制する方法はありますか?:

>> date
04-Sep-2012
>> 

...または少なくともこのように?:

>> date
ans = 04-Sep-2012
>> 
4

4 に答える 4

4

これは少しトリッキーで、他の結果をもたらす可能性がありますが、主に特定の型 (double、char など) のデータを表示している場合は、対応する組み込みの表示メソッドを上書きできます。

例えば、

>> % Before overwriting the @char/display
>> date
ans =
04-Sep-2012

ここ@charで、MATLAB のパス上の場所にディレクトリを作成し、次のメソッドを追加しますdisplay.m

function display(x)
disp(x)
end

それからあなたは持っているでしょう

>> % After overwriting the @char/display
>> date
04-Sep-2012
于 2012-09-04T20:55:54.210 に答える
3

ansは、MATLAB が「最後の」回答を格納する変数の名前にすぎません。「それを回避する」最も簡単な方法は、単に結果を他の変数に代入し、fprintfまたはを使用して明確な方法で出力することsprintfです。

于 2012-09-04T16:53:03.703 に答える
0

作業用に新しいクラスを作成する場合は、いくつかのオプションがあります。コマンド ウィンドウの "きれいな" 表示は、displayすべてのクラスが継承するメソッドによって作成されます。一般にdisplay、変数の名前 " = \n" を出力してからメソッドを呼び出しdispます。(help display詳細はこちら)。

ただし、標準の Matlab 配列の場合、これらのメソッドはすべて組み込みであり、変更できるとは思いません。

sprintfしたがって、ツール ( 、fprintfdisp基礎となる Java ディスプレイをハッキングするさまざまなツール) を構築している場合、無限のオプションがありますが、迅速でインタラクティブな作業中に「よりコンパクトな」表示スタイルをデフォルトとして設定する方法はわかりません。

于 2012-09-04T18:38:05.007 に答える