MATLAB爱好者论坛-LabFans.com

MATLAB爱好者论坛-LabFans.com (https://www.labfans.com/bbs/index.php)
-   MATLAB论坛 (https://www.labfans.com/bbs/forumdisplay.php?f=6)
-   -   [MATLAB GUI] 急!!用户任意输入一个函数要实现傅里叶变换 (https://www.labfans.com/bbs/showthread.php?t=13454)

LYLF 2011-05-22 13:50

急!!用户任意输入一个函数要实现傅里叶变换
 
N=8;
t=0:N-1;
xn=('edit1')
Xk=fft('xn',N); [COLOR="Red"]到这里就报错!![/COLOR]
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{:});
求解!~谢谢

ownsunny 2011-05-25 09:13

回复: 急!!用户任意输入一个函数要实现傅里叶变换
 
肯定是错的啊, fft(xn,N)就行了,为什么要加引号? 然后你接下去直接plot了,我估计你也看不到你想要的结果。因为你的频率横轴没有定义,或者你就用信号的采样点数作为横轴,否则应该是乱麻一团或者很莫名其妙的图形。

一般我用的是y=fftshift(abs(fft(x)))做fft计算,然后定义出频率轴ffx,然后plot(ffx,y)


所有时间均为北京时间。现在的时间是 05:31

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