爱气象,爱气象家园! 

气象家园

 找回密码
 立即注册

QQ登录

只需一步,快速开始

新浪微博登陆

只需一步, 快速开始

搜索
查看: 33814|回复: 51

[资源分享] Surfer软件图形的比例设置

[复制链接]

新浪微博达人勋

发表于 2015-6-1 18:27:31 | 显示全部楼层 |阅读模式

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

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

x
本帖最后由 chengxf 于 2015-6-1 19:04 编辑

Surfer软件图形的比例设置
图形的比例设置用来控制图形及曲面图的尺寸及X、Y、Z 方向每个页面单位的图形单位数。图形的比例设置可用于设置图形、曲面图或合并图,可对 X、Y、Z三个方向分别设置比例。Map图形的Scale比例属性用于在绘图窗口中相对于页面单位来设置图形的单位比例。
图形比例设置是图幅范围的函数,图幅范围由创建图形的文件来确定。在等值线图或曲面图上,图幅范围由生成图形或曲面图的网格[.GRD]文件的范围确定;对于散点图或分类散点图,图形范围由生成图形的数据文件的XY范围控制;对于底图,图幅范围由生成底图的文件的XY范围确定;对于合并图,图幅范围由组成合并图的所有图的综合范围确定。
默认情况下,图形在X、Y方向上等比例设置,最长的边为6英寸。对于一幅在X方向长为60个单位、Y方向长为40个单位的图形,由于X方向较长,按6英寸绘制,则在该例中比例被设置为每英寸10个图形单位;Y方向也相应设置为每英寸10个图形单位,因此按4英寸绘制。
曲面图按上述X、Y方向设置比例,沿Z方向的设置比例为水平范围的1/4,而不考虑 Z 方向上的数据单位数。若想使层面沿Z方向的显示更加突出,则相应调整Z方向的比例因子。
我们看一下著名的China.GSB底图,用Surfer11打开以后,可以看到,X方向长于Y方向,因此软件按照绘图的默认原则,在X方向按照长度6英寸绘制,计算下来每英寸具有10.19507107个图形单位,在Y方向,也要保持每英寸具有10.19507107个图形单位,因而计算下来,Y方向只需要3.472 英寸长度就可以了。这是在XY方向保持相同比例的默认情况下绘制的,当然,也可以设置不同的比例来分别确定XY方向的绘图图形单位。
比例设置01.jpg
上面的图中,页面单位是英寸(in),如果换算成我们常用的单位厘米(cm),那么X方向的长度就是15.240cm,每厘米的图形单位是4.013807509[(10.19507107x6)/15.24],Y方向的长度算下来是8.820cm。见下图:
比例设置02.jpg
坐标轴是所绘图形的一部分,因此当用Scale命令设置图形比例时,坐标轴也相应地重设比例。由于Surfer基于图形的长度和范围来计算合理的刻度间距,因此,重设图形比例可导致沿坐标轴刻度间距发生变化。
图形比例(Scale)属性的设置使用:
在对象管理器中选中“图形(map)”,点击属性管理器中的“比例尺(Scale)”选项卡,就可以看到上面图中所示的各个XY方向选项,如果是3D曲面图、线框图,则还有Z方向的比例属性供设置。
X 比例尺(Scale)、Y 比例尺(Scale)和Z 比例尺(Scale)属性用来设置沿所选坐标轴的比例尺,可对每个坐标轴设置不同的比例尺。当选中“XY按比例缩放(Proportional XY Scaling)”复选框时,对X方向所作的比例尺改变会影响到Y轴,反之亦然。Z比例尺则与X、Y轴比例尺无关。
“每英寸图形单位”或者“每厘米图形单位”属性,用来设置指定轴上每页面单元上1.0英寸代表图象上的多少个图象单元。例如,要使图形以每英寸1000个单元的比例尺绘制,则在编辑框中键入数字1000,“长度”属性值会自动更新来反映所作的改变。例如,如果图形在设定方向为4000个单元,则该图形在该方向的长度为4英寸。
“长度(Length)”属性用来设置特定方向上的图形长度。当改变长度值时,则“每英寸图形单位(1.0 in =_Map Units)”编辑框中数值自动更新,来反映所作的改变。
“XY按比例缩放(Proportional XY Scaling)”复选框用来使X、Y方向同比例设置,当该复选框被选中时,改变X、Y方向的任一方向数值,另一方向则按同比例缩放, X、Y轴均被赋予了每英寸相同的单位数。要对坐标轴分别设置比例尺,则关闭该复选框。
对X、Y方向应用不同的比例尺:
如果基于经纬度坐标的图形面积过大,在显示时图象会显得有点扭曲,这是由于1经度与1纬度不相等。例如,我们还是从China.GSB底图文件中分离出一幅江苏省的底图,当创建该底图时,省边界看起来垂向压缩,这是由于X、Y方向(经向与纬向)等比例设置所致,见下图。而对于地球上的该区,更合适的比例应设置为1纬度约等于1.192经度(或者0.8387纬度约等于1经度)。这里我们是取江苏省的平均纬度33度来计算的。Cos33°=0.83867056794542402963759094180455,1/cos33°=1.1923632928359474559873181829162。至于为什么这样计算,可以参考我以前发表过的关于闪电统计的帖子。
比例设置03.jpg
从上图的“范围”属性可以得到江苏省的经度范围是5.51862955761(x极大值-x极小值),纬度范围是4.348881836328(y极大值-y极小值)。按规则,长边绘图长度是6英寸,就是15.24厘米,那么X方向每厘米的图形单位是5.51862955761/15.24 = 0.36211480037,拿这个每厘米图形单位计算得到Y方向的长度是4.348881836328 / 0.36211480037 = 12.0096。看一看图形的“比例尺”属性,果然不错。见下图。
比例设置04.jpg
现在我们要对于上述例子设置不同的比例尺:
1. 关闭“XY按比例缩放(Proportional XY Scaling)”复选框,就是不要选中它。
2. 在该例中,要增大Y(纬度) 方向比例,以使Y单位是X单位的1.192倍。要将Y方向长度增加1.192倍(1.192*6=7.152英寸),则在Y比例尺的长度编辑框中键入7.152英寸(18.16608厘米),X刻度长度保持6英寸(15.240厘米)。
输入回车,图形将改变比例。点击 比例设置08.jpg    图标,使图形适应屏幕来显示。
读者可以比较一下前后两张江苏省图。
比例设置05.jpg
有些情况下,可能会对X、Y使用不同的单位。例如,对于一幅土壤温度作为深度和时间函数的等值线图,如果深度单位为英尺,时间的单位是天,显然一天不等于1英尺。由于两个坐标轴使用不同类型单位,因此采用的比例尺也不同。深度数据可能会在0~4英尺范围内,按0.5英尺间隔采集;时间数据按30天一周期,每天采集一次;深度轴向延伸4个单位,时间轴向延伸30个单位。按默认比例将生成一幅时间方向长6英寸、深度方向长0.8英寸的图形,可设置时间轴的30个单位等于深度轴的4个单位,从而按两个方向均为6英寸绘制图形。
上述例子也可引用于网格化,对该例来说,需在网格化时应用一个各向异性比率,以便网格化过程不偏重某个方向。对等值线图或曲面图在网格化过程使用各向异性比率时,应使用相同的各向异性比率,否则,图形比例会沿一个方向上扭曲。
在图形中添加比例尺:
在对象管理器中选中“图形(Map)”,用“图形 | 添加 | 比例尺(Map|Add|Scale Bar)”命令来在图上添加长度比例尺,比例尺由四个等间距的段组成,每段以图形单位为基础标注,可以灵活设置每段的间距和每段所代表的图形单位。默认情况下比例尺根据X方向图形比例绘制。
任何图中都可以加入比例尺。比例尺中的单位可与图中的单位不同。在本图中使用了经纬度坐标,而比例尺的单位可以是米,或千米。
在图形中添加比例尺的步骤是很容易的:在对象管理器中选中“图形(Map)”,选择菜单或者右键菜单,“添加|比例尺(Add|Scale Bar)”,一个默认的比例尺就添加成功了。
下面要说明一下比例尺的有关属性。
比例刻度分段数(Number of Cycles),这是比例尺黑白段的总段数,默认值为4,两黑两白,黑白交替,与地图上传统的比例尺一致。
刻度尺指定轴(Scale tracks),默认值是定为X轴方向,可以选择下拉列表框中的一个值用来确定设置比例尺所基于的方向。如果XY方向等比例设置,则X、Y轴选项产生相同结果,Z轴选项只适用于曲面图、合并的曲面图及带3D标签线的倾斜散点图。
每段间隔长度(Cycle Spacing),注意这里的“长度”就是上面我们说到的图形比例的“长度”,但是这里长度不是英寸,也不是厘米,而是多少个图形单位。例如,Cycle Spacing设置为5,则比例尺上每段代表5个图件单位长度,比例尺总计为20个图单位长度。
标注增量(Label Increment),确定标注如何增加,而不考虑段间距(Cycle Spacing)值。虽然可设置不同于每段间隔长度(Cycle Spacing)的标注增量(Label Increment),但通常情况下标注增量(Label Increment)等于每段间隔长度(Cycle Spacing)。例如可用英尺表示轴比例,而比例尺则用公里表示。
其他线条、标注的属性大家都很熟悉,就不必要多说了。
下面还是要来推算一下,我们该如何设置比例尺的每段间隔长度(Cycle Spacing)。这一属性,应该是比例尺的核心属性。
首先我们将“XY按比例缩放(Proportional XY Scaling)”复选框选中,还是回到XY方向等比例的江苏省底图中,它的每厘米图形单位是0.3621148004,我们就将这个数值作为比例尺的每段间隔长度,这就是说,比例尺的每一段,白色一段或者是黑色的一段,它的长度就是1厘米,而这一厘米,就代表了0.3621148004个图形单位。不要忘了上面我们说到,这个0.3621148004是如何计算得来的,它是X的极大值减去X的极小值,就是江苏省最大的经度值减去最小的经度值的结果:5.51862955761,用它除以15.24厘米得到的。
那么它0.3621148004又等于多少千米呢?我们还是粗略一点,确定江苏省的平均纬度为北纬33度。江苏省的最东处到最西处,经度横跨5.51862955761度,假定赤道周长为40008.522千米,那么,0.3621148004图形单位就等于(40008.522/360)x(cos33°)x0.3621148004=33.751千米。现在,我们将标注增量(Label Increment)由1改成33.751千米,比例尺就成了下图那样了。
比例设置06.jpg
这样的比例尺,那个33.751公里的间隔不是个整数,所以还不是我们平时看到的那样的传统的比例尺。那么我们可以反推计算一下,每段的间隔长度应该是多少个图形单位,比例尺上的一段就代表50公里呢。很简单啊,50/(40008.522/360)x(cos33°)= 0.5364492,将这个数值填入“每段间隔长度”属性中,试试看,噢,比例尺变长了,每个间隔代表50公里了。
比例设置07.jpg
有人说,既然有经纬度,还要什么比例尺呢。这个是不一样的概念,需要用比例尺测距离的时候,经纬度就没有那么直观了。好了,我们现在学会画比例尺了。我是这样来理解Surfer软件中的比例尺的,也不知道对不对。上述的文字,参考了Surfer的帮助文件,也参考了李成立翻译的Surfer用户手册,在此表示感谢。
最后,请你拿这样的比例尺去量一下江苏省某两个城市间的距离,看看与中国地图上量出来的结果差别大不大。注意我们一直是说“大约”的,并不是精确的。很多数字使我们无法精确的:地球半径不精确;Π值不精确;江苏省33度纬度是平均值也不精确;计算过程中四舍五入也会产生误差,不过,这些误差在允许范围之内,还是可以容忍的。
2015/6/1  程贤辅

您要下载本文的话,这里有: Surfer软件图形的比例设置.pdf (703.62 KB, 下载次数: 176)

评分

参与人数 2金钱 +16 贡献 +4 收起 理由
微末1314 + 10 很给力!
kongfeng0824 + 6 + 4

查看全部评分

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

新浪微博达人勋

发表于 2015-6-1 20:21:17 | 显示全部楼层
谢谢程老师分享!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-1 20:44:38 | 显示全部楼层
跟进学习一下程老师的大作,谢谢分享。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-2 08:40:19 | 显示全部楼层
程老师真有耐心,学习了
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-2 18:40:53 | 显示全部楼层
支持程老师!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-4 23:24:44 | 显示全部楼层
精细化设置还不是很清楚
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-6 07:52:13 | 显示全部楼层
感谢程老师!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-6 08:07:36 | 显示全部楼层
程老师,您关于surfer软件的许多讲些非常精细和精辟,真是的 受益匪浅,但我还有一个困惑自己很久的问题,想弱弱的问问您,surfer可以计算面积么?我不懂gis,但较熟悉surfer,希望能用这款软件实现这个目的,我绘制降雨分布图,能够用不同范围内降雨的面积近似求出总共降了多少T水么?版块内有一个帖子的回答说可以用grid下拉菜单中的volume,但没有尝试成功,不知道程老师是否接触过这个问题。诚惶诚恐,还请老师不吝赐教!
密码修改失败请联系微信:mofangbao

新浪微博达人勋

 楼主| 发表于 2015-6-6 08:29:00 | 显示全部楼层
精卫 发表于 2015-6-6 08:07
程老师,您关于surfer软件的许多讲些非常精细和精辟,真是的 受益匪浅,但我还有一个困惑自己很久的问题, ...

我看到别人已经回复你了,就没有多说。可以的,可以求面积。运用菜单的Volume功能,也没错。但是你不会用,所以不得要领。但是这也是一两句话很难讲清楚的。先简单说一下面积(体积暂时不提),你若急着要用,就自己捉摸。如果不急的话,我会写一篇关于面积、体积的文章供大家参考。
面积分平面面积和曲面面积,每一种面积里面又分正(裁切)面积和负(填充)面积。Surfer 求面积是需要两个面,称为上表面和下表面,这两个表面其中一个一定是曲面,另一个可以是曲面也可以是平面。例如你有了降水的分布等值线图,这就是一个曲面,然后你确定一个平面的值,就是 Z 值,假定你需要求大于30mm降水的面积,这个平面的 Z 值就是30mm那根等值线的值(30)。然后求这个平面和曲面之间的正(裁切)面积。就用那个菜单,选择第一个上表面为你的降水等值线.grd文件,第二个选中 Z = 30,就会出来报告。
报告是英文的,不知道你用的是Surfer11还是12,32位还是64位。
密码修改失败请联系微信:mofangbao

新浪微博达人勋

发表于 2015-6-6 10:12:02 | 显示全部楼层
本帖最后由 精卫 于 2015-6-6 10:15 编辑
chengxf 发表于 2015-6-6 08:29
我看到别人已经回复你了,就没有多说。可以的,可以求面积。运用菜单的Volume功能,也没错。但是你不会用 ...


哦,这是long long ago的问题了,可能有一些帖子漏掉了,但是这个问题始终没能解决,一直饮恨到现在,所以看到大师级的操作手就忍不住旧事重提了一下,这个问题只是对以前未实现工作的一种追讨,当时并没有继续深入研究,现在也没有什么现实迫切需求,所以压力不大。只记得当年找到了一种叫泰森多边形的算法,由于计算复杂,也没有将其代码化,算是一种遗恨,主要是今天看到了程老师的帖子,忍不住又把很久以前的提出来了。我surfer入门是很久以前由深深帮主带入的,很多实现是在深深老板最初的入门教程后自己摸索的,现在用的是程老师汉化版的surfer12 32位,忘记了是本论坛还是地信网下得了,这两个论坛都见程老师。

最后感谢程老师的热情和耐心,谢谢您!
密码修改失败请联系微信:mofangbao
您需要登录后才可以回帖 登录 | 立即注册 新浪微博登陆

本版积分规则

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

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

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