关于小班从上到下,从左到右自动编号问题(转)

合集下载
  1. 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
  2. 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
  3. 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。

关于小班从上到下,从左到右自动编号问题(转)
关于这个问题,本人看了不少帖子都是先求算小班中心点(或左上角)X和Y坐标,以Y坐标降序,X坐标升序组合排序后,然后从第一行连续编号。

貌似解决了问题,还赢得了不少喝彩,就是不知实践过没有,真的解决了问题吗?
以Y、X坐标组合排序的原理是,先以Y值排序,如果Y值相同,以X值排序。

实际上,小班Y值相等的情况极少,那么这种排序方法实际上就是以Y值排序,X值在其中几乎不起作用。

这样的结果在编号工作中没有实际意义。

那么如何解决这个问题呢?首先我们回想一下手工是如何编号的?如何将手工编号原理在数据操作上体现出来?
面对一张小班图,我们手工编号时,心中实际上默认了一行的高度,从1号开始横向编号,到图的右边结束,又从上一行的下边开始从左向右编号(相当于电脑中的换行)。

这种编号的原理就是将所有小班按照一定距离分割成多个横带,在横带中从左到右编号,下一横带依此连续编号。

如何将手工编号原理在数据操作上体现出来呢?关键是要首先确定横带的高度,手工编号时这个高度是根据小班分布情况可调的,在ARCGIS中自动编号需要一个固定的高度,这个高度根据小班情况确定,一般取所有小班的平均高度。

本人所在工作部门制图时取100米比较合适。

下面进入正题:
1、在ARCMAP中,右键点击小班图层,打开属性表(已有X和Y字段、小班号字段),新建一个字段:带号,数据类型为短整形。

右建点击属性表的“带号”字段,点击字段计算器,输入:“int(‘Y’/100)”。

即以100米距离将小班分带。

2、将属性表导出(DBF格式),若是EXCEL2003可直接打开编辑,另存为EXCEL文件。

或者使用VFP另存为EXCEL文件。

3、在EXCEL中,以带号(降序)、X(升序)排序。

然后在第一个小班填上起始小班号,向下连续填充。

保存退出。

4、在ARCMAP中,打开属性表,连接刚才这个EXCEL表,右键点击小班号,在下接菜单中点击字段计算器,用EXCEL表的小班号替换属性表的小班号,选择EXCEL表中的“小班号”双击,点击确定即可。

搞定!
最后说明:实践出真知,本方法本人在实际工作中采用,完全可媲美手工编号。

关键之处在于确定分带的高度,可多试几次找出最合适的数值。

相关文档
最新文档