利用matlab和python读micaps格式文件、读写二进制文件

经常需要绘图,但常用的绘图工具还是GrADs,因此要写一份二进制文件。(后期应该会转向NCL的吧)

需要注意的是,GrADs所需的二进制文件存储循环为经度x,纬度y,高度z,变量1,变量2,…,时间t,因此写二进制文件是需要按照这个顺序来写。本文中以一个变量即1000hPa等压面上的位势高度为例,多个变量使用循环尝试即可。

matlab读取文本文件

文本文件指的是micaps类型数据文件(实际有29行53列的数据,但文件中每行最多放6个数据),内容格式如下:

图片1
◆需要注意的有:

  1. 直接使用textread命令后,读取的数据是按行列读取的,即有多少行多少列就出来有多少行列,取最大长度,不足的自动用0补齐;
  2. 需要读取的文件是自北向南、自西向东排布的,因此上下需要颠倒交换。

读取代码如下:

data=textread('data\height\1000\13052520.000','','headerlines',4);
% 上面的  'headerlines',4  是指前面4行跳过不读取
% 读取的数据暂时保存在 data 里,下面是使用自定义函数进行整合
% 整合后的数据保存在h1000数组里
h1000=dread(data);h1000=change(h1000);

% 整合数据,使成所需的行列排布
function res=dread(data)
res=[];
% 一共是有29for ii=1:29
    tem=data((ii-1
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值