爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

搜索
楼主: 斥鷃

[源程序] matlab数据转grads格点数据函数(2016/1/11更新版)

  [复制链接]
发表于 2013-5-4 20:05:23 | 显示全部楼层
弱弱地问一句,是要将gridform.m 放到工具箱然后直接调运就行还是将里面的语句拿过来复制进自己编的M文件里?
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2013-5-4 22:35:22 | 显示全部楼层

已经写成函数了,放到工具箱或者工作空间调用就行了,用前先help一下,会有说明的。祝你好运哈~使用中有什么问题的话提出来我会再改进的,你也可以按你自己需要改改代码,看着很多,不过不是很难。
密码修改失败请联系微信:mofangbao
发表于 2013-5-5 00:53:38 | 显示全部楼层
谢谢!还有个问题,我的数据是一个点的风的U、V风量随高度和时间的分布,没有经纬度,怎样转成你所说的按经度、纬度、层次、时次顺序排列的四维变量,且各维维数信息要求相同?例如一个数组U=[1 2 3 4;5 6 7 8],行代表不同高度,列代表不同时间,能不能告诉我它该怎样去排列放进去啊?初学者不是很懂,呵呵,讨教一下,谢谢啦
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2013-5-5 13:10:35 | 显示全部楼层
mast2535 发表于 2013-5-5 00:53
谢谢!还有个问题,我的数据是一个点的风的U、V风量随高度和时间的分布,没有经纬度,怎样转成你所说的按经 ...

用reshape函数,按要求reshape(变量,[经度数,纬度数,层次数,时次数])就可以处理了。
这里提出注意matlab中第一维是列,所以在reshape的时候matlab会把数据按列开始抻成一维,然后再按你的要求一组一组取维形成你要求的数组。例如你的例子U=[1 2 3 4;5 6 7 8]在reshape的时候会先变成[1 5 2 6 3 7 4 8],然后按你要求取维形成数组。我们存取方式应该是经、纬、层次、时次顺序的,所以直接对U进行reshape成[1,1,4(层次维数),2(时次维数)]的话,U(1,1,2,1)的话就不是我们应该要取第二层第一个时次的数据2,而是5,这里按照你的要求应该要先对U转置,让它变成[1 2 3 4 5 6 7 8]这样按经、纬、层次、时次顺序增加的向量以后再reshape就行了。
废话有点多,不知道你听懂没有~
密码修改失败请联系微信:mofangbao
发表于 2013-5-8 18:08:07 | 显示全部楼层
144*73的,二进制,直接写个ctl就可以用grads也可以读的。不过你这自动生成ctl文件的方式值得学习。你的转换思想也挺好。看你的意思是3维时,你把第3维变成第4维,插入第3维。好象是这样的吧?
密码修改失败请联系微信:mofangbao
发表于 2013-5-8 18:52:00 | 显示全部楼层
斥鷃 发表于 2013-3-13 21:49
有编程基础,懂什么是循环、选择、判断就可以入门了。我当时只学过VB,还是可以自学matlab的,图书馆里面 ...

谢谢你的提醒啊,我先在在做毕业设计,画图麻烦啊
密码修改失败请联系微信:mofangbao
 楼主| 发表于 2013-5-8 21:55:05 | 显示全部楼层
kc121 发表于 2013-5-8 18:08
144*73的,二进制,直接写个ctl就可以用grads也可以读的。不过你这自动生成ctl文件的方式值得学习。你的转换 ...

这个函数是用来把matlab里的mat数据读出来这样子~自动生成代码不是很难,毕竟省事么~嗯,总之就是按照grads的存储方式放数据罢了,上面那个例子差不多是这样,因为大家数据千奇百怪,所以需要按照具体情况转换维数设置,这里只是给个参考。
密码修改失败请联系微信:mofangbao
发表于 2013-6-29 10:15:29 | 显示全部楼层
这个好,我一直在找
密码修改失败请联系微信:mofangbao
发表于 2013-7-23 06:31:38 | 显示全部楼层
这就是我想要的,好东东
密码修改失败请联系微信:mofangbao
发表于 2013-7-23 06:38:42 | 显示全部楼层
钱不够啊,郁闷
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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