爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 6013|回复: 17

[求助] 站点资料处理(多时次多站点)

[复制链接]

新浪微博达人勋

发表于 2018-8-1 15:44:11 | 显示全部楼层 |阅读模式

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

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

x


我知道站点资料处理的帖子论坛已经有很多了
但是我这个还是想请大神帮我看一下,因为我这个txt资料的排列好让人头疼……
这个资料特殊在它不同时次站点的个数是不一样的,这样我一开始定义数组的时候我就不知道定什么数
然后它是按顺序排列的,比如01时341572个站,那个341572行之后开始放02时,02时是327676个站……以此类推一直到24小时,全在一个txt里面
这样我循环也不知道要怎么写,因为每小时的站点个数都不一样
谁能来给我指点一下,求帮助!!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-8-1 16:05:26 | 显示全部楼层
既然每个时次站点数不一样,你按时次读不就行了吗
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2018-8-1 16:11:14 | 显示全部楼层
尽头的尽头 发表于 2018-8-1 16:05
既然每个时次站点数不一样,你按时次读不就行了吗

那我一开始定义数组的时候站点个数怎么写啊?
我是要输出成grd文件然后插值成格点数据的
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-8-1 16:12:14 | 显示全部楼层
不知道楼主处理这些数据目的是什么?绘图?还是……?
如果是我,第一想到的是找一份全的站号,用站号做条件,去读取。这样可以快速的把同一站点24时次的提取整理出来。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2018-8-1 16:13:51 | 显示全部楼层
四叶草 发表于 2018-8-1 16:12
不知道楼主处理这些数据目的是什么?绘图?还是……?
如果是我,第一想到的是找一份全的站号,用站号做条 ...

嗯 是要画图  想先输出grd文件然后插值成格点文件用grads画图。
全的站号这个很难,站点数平均大概有340000个这么多……
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-8-1 16:20:54 | 显示全部楼层
小公举Danny王 发表于 2018-8-1 16:13
嗯 是要画图  想先输出grd文件然后插值成格点文件用grads画图。
全的站号这个很难,站点数平均大概有340 ...

数据里有时间标识吗?用时间标识做为不同时刻读写的条件,从来控制循环,边读边写。这样就不用考虑站点的多少了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2018-8-1 16:31:14 | 显示全部楼层
四叶草 发表于 2018-8-1 16:20
数据里有时间标识吗?用时间标识做为不同时刻读写的条件,从来控制循环,边读边写。这样就不用考虑站点的 ...

有的  这个的确可以控制
我尝试一下
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-8-1 16:48:16 | 显示全部楼层
小公举Danny王 发表于 2018-8-1 16:11
那我一开始定义数组的时候站点个数怎么写啊?
我是要输出成grd文件然后插值成格点数据的

按时间读取,不就不用考虑站点的多少了吗
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2018-8-1 17:38:19 | 显示全部楼层
本帖最后由 小公举Danny王 于 2018-8-1 17:39 编辑
四叶草 发表于 2018-8-1 16:20
数据里有时间标识吗?用时间标识做为不同时刻读写的条件,从来控制循环,边读边写。这样就不用考虑站点的 ...

我刚刚试着写了一下,出来的grd大概10M,感觉还算正常
但是生成映射文件的时候就有错。
程序是酱紫的,能不能你麻烦帮我看一下~(中间一大段很傻的重复if和endif我就省略没放了)

program shikuang
implicit none
parameter T=24
Character*8 std_c,std_d
Real lon,lat,yr,mo,dy,hr,pre_1h,pre_3h,pre_6h,pre_12h,pre_24h,pre,tim
integer nlev,flag

open(2,file='H:/rain/tuan/20160702.txt',status='old')
open(3,file='H:/rain/tuan/20160702_pre1h.grd',status='replace',form='binary')
10 read(2,*,end=100) std_c,std_d,lat,lon,yr,mo,dy,hr,pre_1h,pre_3h,pre_6h,pre_12h,pre_24h,pre
!print*,std_c,std_d,lat,lon,yr,mo,dy,hr,pre_1h,pre_3h,pre_6h,pre_12h,pre_24h,pre
!pause
if(hr==1)then
tim=0.0
nlev=1
flag=1
if(pre_1h==999999.or.pre_1h==999998)then
   pre_1h=999999
endif
write(3) std_d,lat,lon,tim,nlev,flag,pre_1h
endif
if(hr==2)then
tim=0.0
nlev=1
flag=1
if(pre_1h==999999.or.pre_1h==999998)then
   pre_1h=999999
endif
write(3) std_d,lat,lon,tim,nlev,flag,pre_1h
endif
if(hr==3)then
tim=0.0
nlev=1
flag=1
if(pre_1h==999999.or.pre_1h==999998)then
   pre_1h=999999
endif
write(3) std_d,lat,lon,tim,nlev,flag,pre_1h
endif

……

goto 10
100 continue

close(2)

end


QQ截图20180801173944.png
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2018-8-2 07:37:28 | 显示全部楼层
可以放一下数据吗?
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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