概述
文章目录
- 前言
- 一、eval函数
- 二、代码示例
- 总结
前言
很多时候在用matlab进行编程的时候,我们需要给多个变量命名和赋值,如果用手一个一个的去敲,多少会感到无聊且枯燥,而且还显得不专业。利用for循环和eval函数即可实现多变量的命名和赋值。
一、eval函数
在matlab帮助文档中,对eval函数的描述如下:
使用语法:
eval(expression)
[output1,...outputN]=eval(expression)
其中expression为要实现的代码。
光看matlab的帮助文档可能对eval函数的实际使用的帮助不是很大,实际上,eval函数可以理解为直接在matlab命令行中运行括号里的matlab语句。以下我将结合代码实例来帮助大家理解。
二、代码实例
代码如下(示例):
clc;clear;
%% 造初始数据
m=10;
n=4;
Sig=zeros(m,n);
for i=1:n
S_tem=linspace(1,10*i,m)';
Sig(:,i)=S_tem;
end
%% 利用for循环和eval函数来给多变量命名和赋值
for i=1:n
eval(['S_',num2str(i),'=','Sig(:,i)',';']);
end
代码运行结果如下:
由此,即可实现多变量的命名和赋值。同时也可以利用eval函数来运行函数,
代码如下(接上):
%% 进行傅里叶变换
for i=1:n
eval(['S',num2str(i),'_fft','=','fft','(','S_',num2str(i),')',';']);
end
代码运行结果如下:
利用for循环和eval函数也可以实现批量出图:
代码如下(接上):
%% 出图
figure,
plot(1:m,S_1)
hold on
for i=2:n
eval(['plot','(','1:m',',','S_',num2str(i),')'])
end
代码运行结果如下:
总结
这里我只是简单地描述了matlab中eval函数的使用,利用for循环和eval函数的结合,可以实现批量处理,关于这一点,还是非常方便的。
因为本人也是初学者,有些描述的不好的地方,或者各位有什么意见和建议,欢迎大家在评论区留言,一起学习。
最后
以上就是尊敬香烟为你收集整理的matlab eval 函数的使用前言一、eval函数二、代码实例的全部内容,希望文章能够帮你解决matlab eval 函数的使用前言一、eval函数二、代码实例所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复