爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 38767|回复: 52

[资源分享] 散点图:剔除多边形外的数据点

  [复制链接]

新浪微博达人勋

发表于 2014-10-5 14:08:02 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 chengxf 于 2014-10-11 10:14 编辑

    本程序是为气象家园网友设计的一个 Surfer 软件的免费的辅助程序,它能能够将多边形以外的数据点剔除,使得散点图看起来像是白化后的效果。气象家园的网友都可以免费下载和使用,你也可以拷贝给其他人使用。但是,你必须保持它的完整性(程序本身和本说明文件),不能修改它,也不能对它进行反编译。
    下面,将使用步骤和注意事项作一说明。
    一、首先本程序需要一个多边形的数据文件:后缀名为.bln,其格式参考 Surfer 软件的帮助文档,最重要的一点是格式应该是“经度(或者 X 方向值),纬度(或者 Y 方向值)”,这个边界文件也应该是可以用于白化的.bln文件,它内部只有一个多边形,第一行为多边形的数据行数和白化参数0或1。
    二、其次,需要一个原始的散点图数据文件,目前仅能处理文本格式的文件,后缀名为.dat或者.txt,每一行为一条记录,第一列是经度(或者 X 方向),第二列为纬度(或者 Y 方向),其他列是你的散点数据,可有可无。作为一般的散点图,有前两列数据就已经足够,如果作为分类散点图,也许有第三列或更多列的数据。
    三、输出的文件格式,现在也只能是文本格式,后缀名同样为.dat或者.txt,每一行为一条记录。你的原始数据有多少列,输出的文件就有多少列。只是剔除了多边形范围以外的数据。
    四、软件暂时不能对 Excel 格式或其他格式的数据进行处理,也不能输出 Excel 格式和其他格式的数据文件。请自行利用其他软件转换以后再到本程序来做剔除多边形以外数据点的工作。
    五、使用本程序时,请首先选定多边形边界文件以及原始散点图数据文件,在选择多边形的边界文件时,就已经获得该多边形的外接矩型,也就是说获得了该多边形的 X 和 Y 轴方向上的极大极小值。当调入原始的散点数据文件时,就首先将外接矩形范围之外的数据全部排除,在输出文件栏就可以看到做完了这一步的数据文件。请确定好输出文件的文件名以后,程序将进行第二步的剔除工作,这是真正意义上的排除多边形以外的数据点。最后点击“保存输出文件”,这个软件的任务就算完成了。保存的结果文件可以到 Surfer 中或者别的作图软件中去使用,以便精细加工。
    六、本程序虽然具有一定的排错功能,然而可能还会有不可预料的错误出现,从而妨碍程序的正确执行。所以要求数据的格式尽量不要出错。


下面配合图形,实际操作一下,以便大家快速上手。
第一步,获取一个边界文件。这里我取@vanni010 的“成都边界.bln”文件作为例子。
2014-10-5 11-16-29.jpg
第二步,导入多边形数据。就是导入边界文件。第一行的数据:417,0,对于本程序是无用的。放在那里不去管它。多边形数据导入完成后,实际上我们已经获得了该多边形的 X 和 Y 方向(或经纬度)的极大极小值。外接四边形可以知道了。
2014-10-5 11-21-30.jpg
第三步,打开原始的散点数据文件。这里要处理的散点数据,主要是获得的闪电数据,当然,其他方面应用的散点数据也是可以利用本程序的。关键是格式是这样的:xxx,xxx,……,以逗号隔开的数据文件,至少有两列。
2014-10-5 11-40-49.jpg
第四步,将散点数据导入。这个时候,程序将立刻把外接矩形以外的数据全部排除掉,这是提高程序效率的办法。外接矩形以外的数据肯定是多边形以外的,但是外接矩形以内的数据点并非一定是多边形以内的。还要进一步排除。
2014-10-5 11-47-37.jpg
删除了一部分数据以后可以比较连个表格看出来。
2014-10-5 12-07-35.jpg
将滑块拉到最下面也可以看到。
2014-10-5 11-56-19.jpg
第五步,确定输出的散点文件名。这里是要确定的是输出文件。
2014-10-5 12-13-41.jpg
确定了以后,程序将剔除多边形以外的数据点,有信息框报告删除了多少记录。
2014-10-5 12-18-09.jpg
第六步,最后一步,保存输出文件。会出现一个信息框,告诉你文件在哪里。
2014-10-5 12-27-29.jpg

下面是程序运行的结果图示:
这是成都边界和闪电散点图的叠加,没有剔除多边形以外的数据。
2014-10-5 9-29-23.jpg
这是经过程序剔除边界外数据后作的图:
2014-10-5 9-32-30.jpg
这是上面图中提到的局部的放大图:
2014-10-5 9-38-59.jpg
这是另外一种多边形,它内部有边界线,划分区县的,拿它来作为边界多边形,照样可以。程序运行良好,达到预期效果。
2014-10-5 9-41-27.jpg

这是我在“成都边界.bln”基础上用数字化功能添加了一个“岛屿”和一个“湖泊”。并将它们合并成为“一个”多边形,使它成为一个合格的白化边界文件。然后用同样的步骤,得到剔除部分散点数据的文件,然后作出图来。岛上有数据点,湖泊中没有数据点。
说明程序功能正常。
2014-10-5 10-58-55.jpg

2014-10-5 11-09-14.jpg

2014-10-5 11-10-44.jpg
这是部分岛屿的放大图:
2014-10-6 13-24-28.jpg
看到这里,着急了吧,程序呢?这里这里:
Surfer软件辅助程序.rar (2.55 MB, 下载次数: 93)

评分

参与人数 6威望 +8 金钱 +98 贡献 +34 体力 +360 收起 理由
mofangbao + 20 + 10 必须顶!
kongfeng0824 + 2 + 18 + 6
fengkp + 10 您这是突出贡献!!
denghaijun + 20 + 2 辛苦了,程老师!
言深深 + 4 + 20 + 8 + 160 您辛苦了!
lqouc + 2 + 10 + 8 + 200 膜拜程老师大作

查看全部评分

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

新浪微博达人勋

发表于 2014-10-5 20:37:07 | 显示全部楼层
谢谢程老师的大作,学习了。假期也这么努力,向程老师学习。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-7 09:35:19 | 显示全部楼层
很实用的程序。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-10-7 10:47:02 | 显示全部楼层
holz 发表于 2014-10-7 09:35
很实用的程序。

谢谢夸奖。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-7 18:50:54 | 显示全部楼层
一直关注程老师的作品。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-8 08:53:14 | 显示全部楼层
好厉害呀。
密码修改失败请联系微信:mofangbao
回复

使用道具 举报

新浪微博达人勋

发表于 2014-10-8 20:37:37 | 显示全部楼层
谢谢程老师,我已经在应用您的程序了,有关信息我会在之后反馈给您的,谢谢
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-8 23:50:34 | 显示全部楼层
今天用了您的程序作图,如果做一张只含有经纬度的图来做散点图效果很不错,如果加入强度进行分析的话,好像还是出现将负强度自动取绝对值的问题了,您看呢?
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2014-10-9 07:56:07 | 显示全部楼层
本帖最后由 chengxf 于 2014-10-9 08:06 编辑
vanni010 发表于 2014-10-8 23:50
今天用了您的程序作图,如果做一张只含有经纬度的图来做散点图效果很不错,如果加入强度进行分析的话,好像 ...

闪电强度取不取绝对值,这是由你自己决定的。这是闪电统计程序里面的问题,上次根据你的意见更改了闪电统计程序,你可以自由决定。看QQ去。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2014-10-9 09:19:04 | 显示全部楼层
为什么我汉化之后工具栏还是英文的···
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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