包胡萍
[摘要]本文主要介绍了surfer的功能特点,同时讲述surfer的绘图功能在我局制作自动气象站气象要素填图系统时的运用。
[关键词]气象要素;等值线
[中图分类号]P415.1+2 [文献标识码]A [文章编号]1672-5158(2013)06-0403-01
1 引言
随着人们的生活水平的不断提高,公众对气象的关注度和服务水平的要求也越来越高,而我们气象部门提供给公众的气象产品中不少以图形的方式展示给用户,其中气象实时要素的等值线分布图便是重要的产品之一。等值线图是用布满一定区域内的若干条等值线表示某个地理现象的数量分布状况。它是研究地理事物变化和发展的一个重要手段。由于等值线上注有数值,而且数值间隔是相等的,因此可以根据等值线的数值大小、排列方向、形状变化、疏密程度等,反映出该地理事物变化的急缓、递变的方向及分布特点。我们利用成熟的surfer绘图软件制作不同区域的温度、降水等气象要素的等值线图。等值线图能够让使用者方便直观地了解到某个区域的温度、降水等情况。
2 SURFER绘图软件介绍
Suffer是一款以画三维图的软件。它内置有比较全面的空间插值算法,主要包括反距离加权插值法、克里金插值法、最小曲率、改进谢别德法、自然邻点插值法、最近邻点插值法、多元回归法、径向基函数法、线性插值三角网法、移动平均法、局部多项式法。具有的强大插值功能和绘制图件能力,可以轻松制作基面图、数据点位图、分类数据图、等值线图、线框图、地形地貌图、趋势图、矢量图以及三维表面图等;同时,它还提供各种流行图形图像文件格式的输入输出接口以及各大GIS软件文件格式的输入输出接口,大大方便了文件和数据的交流和交换;提供新版的脚本编辑引擎,自动化功能得到极大加强。
3 绘制等值线图
在Suffer软件中分别用GridSh能和base map功能打开区域气象要素数据文件和区域背景地图文件,即可绘制出气象要素等值线图。我们所做的软件界面是在c#.net台上进行的制作,我们利用suffer绘制地图也是在c#.net调用suffer软件,这样我们在就可以在执行我们编写的程序中看到suffer绘制出来的地图以及气象要素的等值线图。在c#.net的代码中,我们绘制地图以及等值线图的操作代码都是写在函数中的。
3.1 用suffer绘制边界地图
在c#中,调用suffer软件的调用代码为:
Surfer.Application app=new Suffer.AppEcation();
在绘制边界地图时,我们的地图边界文件是存储在bouTldary.bin文件中的,存储样式为106.119,30.535,表示一个边界点的经度和纬度,boundary.bln文件中每一行且只能有一个这种样式的经度和纬度值。
其绘制出来的网格地图如图1所示。
3.2 用surfer绘制等值线
我们在绘制等值线之前,通过在c#.net中编写代码设定我们要绘制的等值线的要求,如等值线区域的颜色、要连接的后台数据库、统计方式以及需要查询的气象要素的时间段等。完成对各参数的设定后,我们将输出各个气象要素的等值线图。一般情况下,我们对气象要素的统计方式有最大、最小、合计、平均等。
我们以求某段时间内的最高气温为例,此时我统计方式就是求这段间内气象的最大值。通过surfer绘制出来的图形如图2如示。
同样的道理,当我们要查看一定时间范围内的降水量的区域分布等值线图,其统计方式是求这段时间内的合计值,其输出图形如图3所示。
3.3 标注站点信息
我们在显示等值线的同时,要显示我们每个自动站的位置及相应的气象要素数值,如气温、降水量等,如上面绘制出的等值线图所示,这可以用post map和classed post map来完成。
4 结束语
等值线图在目前很多的行业中都有用到。我们在绘制等值线图时,如果完全由开发人员自行编写代码来实现这些算法的话,由于计算机生成等值线的算法较为复杂,自己开发等值线绘制程序势必耗费大量的时间。而Surfer软件就为我们解决了这一难题,由于他强大的绘图功能和比较全面的空间插值算法,使得开发人员借助Surfer软件可以较快地制作出一些气象要素如气温、降水等的美观的等值线图。