String 在绘图标题中使用变量的名称
我想在绘图标题中使用变量的名称。我试过这个:String 在绘图标题中使用变量的名称,string,matlab,plot,String,Matlab,Plot,我想在绘图标题中使用变量的名称。我试过这个: str = sprintf('Spectral analysis - WELCH - %d', X); 但这取X的值,而不是X本身 有什么想法吗?你可以用 必须创建一个函数才能使其工作,因为inputname将输入变量的名称返回给函数。首先创建一个接受一个输入x,并返回所述变量的名称的。然后使用要使用的变量调用此函数: variable_name = @(x) inputname(1); str = sprintf('Spectral analys
str = sprintf('Spectral analysis - WELCH - %d', X);
但这取X的值,而不是X本身
有什么想法吗?你可以用
必须创建一个函数才能使其工作,因为inputname
将输入变量的名称返回给函数。首先创建一个接受一个输入x
,并返回所述变量的名称的。然后使用要使用的变量调用此函数:
variable_name = @(x) inputname(1);
str = sprintf('Spectral analysis - WELCH - %s', variable_name(X));
注意,您必须将
%d
更改为%s
,因为您需要的是字符串,而不是数字。也许我理解的问题不对,您希望变量名称出现,而不是变量中的值?像这样的
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 ...
看看这里