2016-07-06 13 views
1

プロットのタイトルに変数の名前を使用したいと思います。私はこれを試しました:プロットのタイトルに変数の名前を使用する

str = sprintf('Spectral analysis - WELCH - %d', X); 

しかし、これはX自体の代わりにXの値を取る。

アイデア?

+0

ここをクリックしてくださいhttps://es.mathworks.com/matlabcentral/newsreader/view_thread/251347 – Ondiz

答えて

1

inputnameを使用できます。

inputnameは、関数に入力変数の名前を戻すため、これを機能させるには関数を作成する必要があります。最初にanonymous functionを作成し、1つの入力xを取り、前記変数の名前を返します。使用する変数で、この関数を呼び出すその後:

variable_name = @(x) inputname(1); 
str = sprintf('Spectral analysis - WELCH - %s', variable_name(X)); 

注あなたは、文字列ではなく、数字をしたいので、あなたは、%s%dを変更する必要があります。

0

私は間違った質問を理解しているかもしれませんが、変数の値の代わりに変数名が表示されますか?だからこのような何か?

VariableName = 1:5; 
structure = whos 
VarName = structure(1).name 
CompleteVarName = genvarname(repmat({VarName}, 1, 6), 'VarName'); 

str=sprintf('Spectral analysis - WELCH - %s ', CompleteVarName{2:6}); 

>> str 

str = 

Spectral analysis - WELCH - CompleteVarName1 Spectral analysis - WELCH - CompleteVarName2 Spectral analysis ... 
関連する問題