爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 5687|回复: 4

[程序设计] 关于批量作图

[复制链接]

新浪微博达人勋

发表于 2012-10-23 22:59:05 | 显示全部楼层 |阅读模式

登录后查看更多精彩内容~

您需要 登录 才可以下载或查看,没有帐号?立即注册 新浪微博登陆

x
有用过fname的批量作图处理的童鞋吗。。。   fname=[dt_ref_global_merged_msla_h_19921021_19921021_20100503.(end-17:end-9),'nc'];,这个语句能看懂不,然后我想把fname里面的名称改为整体的名称该怎么弄
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-25 10:10:19 | 显示全部楼层
楼主的这个命令在matlab没办法执行啊,
fname=[dt_ref_global_merged_msla_h_19921021_19921021_20100503.(end-17:end-9),'nc'];
这个语句是要给fname赋值么?
改为整体的名称是什么意思?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-10-25 15:09:17 | 显示全部楼层

fname里面的dt_ref_global_merged_msla_h_19921021_19921021_20100503,表示的是一周的sla网格值,我下了好多年的,其数据名称基本差不多,只是19921021这个位置会有时间的变化,因为是一周一周的数据,.(end-17:end-9)表示的是dt_ref_global_merged_msla_h_19921021_19921021_20100503的倒数第17个到倒数第9个的字符,我就是通过该表这个字符来做循环,
for i=1:52
    j=1000+i;
    day=int2str(j);
    fname=[day(2:4),'.nc'];
    ncload (fname);
比如说这个样子就可以批量做数据名称为day的图了,但是我现在的问题是怎么将我那么多的数据变成一个整体的名字,
dt_ref_global_merged_msla_h_19921021_19921021_20100503只是其中一个数据的名称。。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2012-10-26 10:34:50 | 显示全部楼层
小婕婕 发表于 2012-10-25 15:09
fname里面的dt_ref_global_merged_msla_h_19921021_19921021_20100503,表示的是一周的sla网格值,我下了 ...

可以这样:
如果你的文件都存放在一个文件夹下,要读取所有文件的文件名
fidpath='nc文件路径';
Fn=dir(fidpath);%%Fn下存放的是所有文件的文件名,以字符串的形式存储
fidname=Fn.name;

如果要以统一的格式读入每个时刻的数据,可以这样:
Time=[timestart:timeend];
for i=1:length(Time)
Fname=strcat('dt_ref_global_merged_msla_h_19921021_',num2str(Time(i)),'_20100503.nc');
fid=fopen(Fname);
data=fscanf(fid);%根据你的需要选用读取函数,不一定是fscanf
end

评分

参与人数 1金钱 +20 收起 理由
wlzhongouc + 20 感谢分享!

查看全部评分

密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2012-11-4 14:16:11 | 显示全部楼层
晓曦 发表于 2012-10-26 10:34
可以这样:
如果你的文件都存放在一个文件夹下,要读取所有文件的文件名
fidpath='nc文件路径';

嗷嗷,好哒,谢谢啦O(∩_∩)O~
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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