爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 72084|回复: 181

也说格点数据插值为站点数据

  [复制链接]

新浪微博达人勋

发表于 2011-8-12 13:05:23 | 显示全部楼层 |阅读模式

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

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

x
看了坛主写的在GrADS中格点插值为站点数据的帖子,忍不住也要介绍一下MeteoInfo中的实现方法。MeteoInfo中用的也是双线性插值方法。

用于插值的站点数据文件就是另一帖子介绍的文本格式 http://bbs.06climate.com/forum.p ... &extra=page%3D1 。这里引用一下:“文件头只有一行,是每一列的名称。文件的第一列是站点标识(站号或者站名),第二列和第三列是站点的经度和纬度,第四列以后是各个要素。列和列之间要用逗号分隔(不能是中文的逗号)。如果你的站点数据不是这种格式,只需要在Excel里按照上述说明处理一下,另存为CSV文件即可”。这个例子中用到的站点数据文件是站点数据提取帖子从micaps第一类数据中提取的中国区域的站点数据,免费下载呀。
China_Prec_2010101420.csv (100.85 KB, 下载次数: 666)
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-8-12 13:24:33 | 显示全部楼层
2、MeteoInfo脚本程序
当然也可以用MeteoInfo的脚本程序来将格点数据插值为站点数据,通过程序可以获得较复杂的插值结果,这里只给出一个最简单的例子:

# This Python file uses the following encoding: GB2312
#---- 引入类库
import clr
clr.AddReferenceByPartialName("System")
clr.AddReferenceByPartialName("System.Windows.Forms")
clr.AddReferenceByPartialName("System.Drawing")
from System import *
from System.Windows.Forms import *
from System.Drawing import *
clr.AddReference("MeteoInfoC.dll")
from MeteoInfoC import *
from MeteoInfoC.Layout import *
from MeteoInfoC.Data import *

#---- 设置路径变量
BaseDir = "C:\\Program Files (x86)\\MeteoInfo\\"
MapDir = BaseDir + "Map\\"
LegendDir = BaseDir + "Legend\\"
DataDir = BaseDir + "Sample\\GrADS\\"
OutDir = "E:\\Temp\\"
#---- 创建MIApp类的对象
myApp = MIApp()
#---- 打开格点数据文件
df = DataDir + "model.ctl"
myApp.OpenGrADSData(df)
#---- 获取地面气压格点数据
gData = myApp.GetGridData("PS")
#---- 设置输入、输出站点数据文件
inf = OutDir + "China_Prec_2010101420.csv"
outf = OutDir + "test.txt"
#---- 格点数据插值为站点数据,并输出为文件
gData.ToStation(inf, outf)
密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2011-8-12 13:42:10 | 显示全部楼层
好啊,加油加油啊,哈哈,
=============
认真看了一遍,很好操作,我找点数据试试去,一会儿再来...
==============
我用我昨天的格点数据试了一遍,由于我没有对应的站点文件,所以就用了楼主提供的那个站点,在转换之后的数据中出现了两个变量,一个叫做data,还有一个是precipitation,但是我原文件中并没有这两个变量,而且转换的时候用桌面模式应该是每次转单个变量,后来我看了一下楼主提供的文件,原来里面有个precipitation
=========可不可以选择不要把背景文件的变量加上去了额,{:soso_e113:},我还奇怪怎么来了个降水量呢,还有插值出来后lon/lat格式是不是不能显示原始变量的时间和高度了呀,支持楼主啊,不过MeteoInfo的确在越来越强大了{:soso_e144:}

给楼主附上那个帖子的附件啦
gr2stn.zip (35.32 KB, 下载次数: 23)
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-8-12 19:10:09 | 显示全部楼层
你可以在插值前把站点数据的precipitation那列去掉,插值后的变量起了缺省的名字data。文本站点数据的格式是固定的,变量时间、高度之类的信息可以放在文件名中。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

0
早起挑战累计收入
发表于 2011-8-12 19:17:03 | 显示全部楼层

原来如此,来,请你喝杯酒
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-8-13 11:09:08 | 显示全部楼层
学习一下,还没用过MeteoInfo
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-8-19 17:45:20 | 显示全部楼层
按照版主的方法试验了一把,很好汉强大,比grads简单多了 顶一个
但是脚本程序怎么用在哪编辑还是摸不着头脑,希望版主能够提供更详细的贴着
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2011-8-19 17:57:04 | 显示全部楼层
在我的博客中对Script的用法有详细的描述,可以参考:http://hi.baidu.com/meteoinfo/blog
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-8-26 16:41:55 | 显示全部楼层
太好了,可以用,太感谢楼主了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2011-8-26 16:43:07 | 显示全部楼层
感谢楼主
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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