爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
楼主: 简单人啊

[源程序] matlab小波分析程序,详细解释消除所有运行问题,完全可用!

  [复制链接]

新浪微博达人勋

发表于 2016-12-15 16:51:58 | 显示全部楼层
Error using contour (line 81)
The size of X must match the size of Z or the number of columns of Z.运行后出现这个问题怎么回事,原始数据直接这样的格式可以吗1981        1982        1983        1984        1985        1986        1987        1988        1989        1990        1991        1992        1993        1994        1995
210.8607364        149.9852371        151.7098875        151.9347794        165.0144977        170.2045765        135.2621434        136.5994001        242.2722488        168.9102273        144.6215823        131.837639        152.7624005        204.3179043        229.1539587
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-12-15 21:08:05 | 显示全部楼层
简单人啊 发表于 2016-12-13 13:40
从图看,过程没什么问题。

楼主,我还有个问题,画wavelet power spectrum时候,网站上有个例子wavetest.m是这么画图的
% Wavelet transform:
[wave,period,scale,coi] = wavelet(sst,dt,pad,dj,s0,j1,mother);
power = (abs(wave)).^2 ;        % compute wavelet power spectrum
levels = [0.0625,0.125,0.25,0.5,1,2,4,8,16] ;
Yticks = 2.^(fix(log2(min(period))):fix(log2(max(period))));
contour(time,log2(period),log2(power),log2(levels));
画图为什么都进行log2的运算?这样得出的结果就和实际值不对了啊?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-12-15 21:14:07 | 显示全部楼层
太好了!!thanks!!!{:eb303:}{:eb303:}
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-12-16 08:58:13 | 显示全部楼层
xiujuan241 发表于 2016-12-15 21:08
楼主,我还有个问题,画wavelet power spectrum时候,网站上有个例子wavetest.m是这么画图的
% Wavelet  ...

请看首页我对程序的注释,看完你就明白了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-12-16 09:02:37 | 显示全部楼层
杜小翕 发表于 2016-12-15 16:51
Error using contour (line 81)
The size of X must match the size of Z or the number of columns of Z. ...

原始数据没什么问题
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-12-16 09:52:33 | 显示全部楼层
简单人啊 发表于 2016-12-16 09:02
原始数据没什么问题

恩恩好的谢谢,我自己在看看
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-12-16 09:58:52 | 显示全部楼层
Error using contour (line 81)
Z must be size 2x2 or greater.
还是现实这里有问题  ,实在是不懂了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-12-16 10:44:54 | 显示全部楼层
>> sst = (sst - mean(sst))/sqrt(variance) ;
Error using  -
Matrix dimensions must agree.
这里维度又不匹配。。。为什么我运行时候出现这么多问题,是哪里出错了吗?我直接运行的rain.m文件没错吧?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2016-12-16 11:24:09 | 显示全部楼层
简单人啊 发表于 2016-12-16 08:58
请看首页我对程序的注释,看完你就明白了

您的帖子:
Yticks = 2.^(fix(log2(min(period))):fix(log2(max(period))));%纵坐标刻度值,这是原数据
[c,h]=contour(time,(log2(period)),realpart,'-');  将纵坐标取对数,realpart没有改动
....
'YTick',log2(Yticks(:)), ...%标记纵坐标为对数值
'YTickLabel',Yticks)% 这个为什么又标记纵坐标为原始值?
??我觉得您的图结果是将纵坐标取了对数,realpart是实际值。wavetest.m中是这样画图的contour(time,log2(period),log2(power),log2(levels));除了横坐标以外都取了对数,我做了实验,这个结果确实与contour(time,period,power)结果差了log2倍。不明白这么做仅仅为了画图好看吗?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2016-12-16 12:46:15 | 显示全部楼层
本帖最后由 简单人啊 于 2016-12-16 12:54 编辑
xiujuan241 发表于 2016-12-16 11:24
您的帖子:
Yticks = 2.^(fix(log2(min(period))):fix(log2(max(period))));%纵坐标刻度值,这是原数据
...

纯属个人理解,我觉得是这样的。另外,这几个程序都不是原创的,我基本没做修改。你看的那个帖子可能被楼主修改错了
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

Copyright ©2011-2014 bbs.06climate.com All Rights Reserved.  Powered by Discuz! (京ICP-10201084)

本站信息均由会员发表,不代表气象家园立场,禁止在本站发表与国家法律相抵触言论

快速回复 返回顶部 返回列表