24小时热门版块排行榜    

查看: 1264  |  回复: 6
当前只显示满足指定条件的回帖,点击这里查看本话题的所有回帖

hanchenhua

银虫 (小有名气)

[求助] 求傅利叶变换程序

我是matlab的菜鸟级,用网上看到的傅利叶变换的程序运行自己的数据,结果很怪异。不知道是什么原因。
其实数据很简单,一列是时间,另一列是温度变量。
采样频率:1分钟
采样个数:5241
回复此楼
Never give up! Move!
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

dk1013

木虫 (正式写手)

【答案】应助回帖

感谢参与,应助指数 +1
建议LZ自己看看快速傅里叶变换的书。
Matlab自带的fft,fft2函数,变换之后并不是你想要的频率从小到大,而是这样的顺序:
最大频率(正) =》 零频率 =》 最小频率(负)
所以变换后的结果你需要左右对换一下才可以。
Matlab甚至连这一点都给你想到了,直接也有现成的函数: fftshift
假如你的数据是x (一维数据),试试这个:
plot(abs(fftshift(fft(x)))),横坐标的频率啥的自己搞定。
到得还来别无事 庐山烟雨浙江潮
6楼2012-09-01 11:36:45
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
查看全部 7 个回答

fzwxjtu

铜虫 (初入文坛)

应该是采样频率怎么是一分钟?应该是多少Hz才对吧?
2楼2012-08-31 12:47:44
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

baobiao007

木虫 (职业作家)

中国特色

matlab自身就有fft命令啊
我同意叔本华的观点,人们投身艺术和科学领域的强烈愿望之一就是逃离痛苦、残酷和枯燥无味的现实生活,逃离自己飘忽不定的七情六欲的桎梏。--爱因斯坦
3楼2012-08-31 13:32:29
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖

hanchenhua

银虫 (小有名气)

我的数据是1分钟一个,采样频率应该算是1分钟吧。
PS:matlab自身带着的傅利叶变换,我做出来的图很怪。
如果有那位大侠方便的话,请加我QQ交流。谢谢!
Never give up! Move!
4楼2012-08-31 14:34:12
已阅   回复此楼   关注TA 给TA发消息 送TA红花 TA的回帖
信息提示
请填处理意见