Labfans是一个针对大学生、工程师和科研工作者的技术社区。 论坛首页 | 联系我们(Contact Us)
MATLAB爱好者论坛-LabFans.com
返回   MATLAB爱好者论坛-LabFans.com > 工程数学软件 > MATLAB论坛
MATLAB论坛 一切MATLAB相关问题在此讨论。
回复
 
主题工具 显示模式
旧 2011-05-22, 13:50   #1
LYLF
初级会员
 
注册日期: 2011-05-22
年龄: 35
帖子: 1
声望力: 0
LYLF 正向着好的方向发展
默认 急!!用户任意输入一个函数要实现傅里叶变换

N=8;
t=0:N-1;
xn=('edit1')
Xk=fft('xn',N); 到这里就报错!!
plot(Xk);
stem(t,abs(Xk),'.');
axes(handles,axes2,[0,20,0,20]);
ylabel('|Xk|');
title('8点FFT变换');
??? Error using ==> fft
Not enough input arguments.

Error in ==> fft at 34
builtin('fft', varargin{:});
求解!~谢谢
LYLF 当前离线   回复时引用此帖
旧 2011-05-25, 09:13   #2
ownsunny
初级会员
 
注册日期: 2011-05-25
帖子: 2
声望力: 0
ownsunny 正向着好的方向发展
默认 回复: 急!!用户任意输入一个函数要实现傅里叶变换

肯定是错的啊, fft(xn,N)就行了,为什么要加引号? 然后你接下去直接plot了,我估计你也看不到你想要的结果。因为你的频率横轴没有定义,或者你就用信号的采样点数作为横轴,否则应该是乱麻一团或者很莫名其妙的图形。

一般我用的是y=fftshift(abs(fft(x)))做fft计算,然后定义出频率轴ffx,然后plot(ffx,y)
ownsunny 当前离线   回复时引用此帖
回复


发帖规则
不可以发表新主题
不可以发表回复
不可以上传附件
不可以编辑自己的帖子

启用 BB 代码
论坛启用 表情符号
论坛启用 [IMG] 代码
论坛禁用 HTML 代码



所有时间均为北京时间。现在的时间是 16:09


Powered by vBulletin
版权所有 ©2000 - 2025,Jelsoft Enterprises Ltd.