总结:怎么解决向ArcGIS属性表中导入Excel出现NULL值的情况 您所在的位置:网站首页 java中导入文件字段为空怎么办 总结:怎么解决向ArcGIS属性表中导入Excel出现NULL值的情况

总结:怎么解决向ArcGIS属性表中导入Excel出现NULL值的情况

2024-07-12 21:01| 来源: 网络整理| 查看: 265

当你默默地一单元格一个单元格地为图形输入属性的时候,其他人正在用高效的方式解决问题!(不是说你傻,虽然你就是) 一、 基于属性的关联操作流程:ArcGIS->windows->table of content(TOC)->图层名右键jion工具或Arctoolbox->data management tools->joins->add join 注:关联只是临时的,图层关闭后不会保存关联上的属性,但你可以点击图层右键data->export导出为一个新层

1. 建立关键字要将属性表(如excel表)中关联到图形中,首先要建立图形与属性之间的一一对应关系,所谓一一对应并不是要求图形有多少块属性记录就要有多少条,而是要求关联所依据的字段能够唯一标识图形和属性记录,例如,如果你想通过“编号”字段实现图形属性的关联,编号为A002图形只能有一个,同样属性记录“编号”字段中A002也只能出现一次(如果图形中有一个A002,而属性记录中有多个A002,在属性表中第一次出现的A002记录将会被关联),要实现这一目的,你首先需要检测拟关联字段是不是具有唯一标识码的特征,检测过程可以通过excel的“数据透视表”功能和ArcGIS的属性表“summarize”工具实现,其实就是统计下它出现的次数,出现一次的就是正常的。如果唯一一个可用来关联的字段不是唯一标识码,则需要对图形数据和属性数据建立一个新字段,并对重复编码进行人工判读,重复的A002可以用A002-1、A002-2……去表示,最后做到图表一致。注意事项:关联字段大小写要一致、字段中不要有空格(出现上述问题可以用ArcGIS的属性表field calculator面板中的String里的函数实现相互转换,前提条件是你需要用ArcCatalog建立一个personal geodatabase(以下简称mdb,它实际上就是access),将属性表导入,因为ArcGIS无法实现对excel表的编辑,但可以编辑mdb中的属性)

2. 记录单行一行就是一行(呵呵,大白话,听得懂不),意思就是呢,去掉excel乱七八糟的表头,最重要的一点,不要出现一个合并的单元格对应多行的情况。比如有些人将第一列的前五行合并了,内容为“农用地”,第二列分别对应“耕地”、“林地”……这样不太合适!

3. 字段名称标准化有时你关联好以后,发现属性表明明有A002这条记录和图形对应,但其图层属性中其内容却是空的。郁闷得要死要活,这时你用identity标识下这个地块,发现属性竟然能够正常显示,或者在属性表中将“all”切换成“selected”选项后发现属性也能正常显示,我顶,为什么呀?一个原因可以是你的字段名称可能出现了类似括号“()”之类的字符,解决办法A.将括号改成下划线;B.在可编辑的状态下将数据导出,流程为图层右键data->export(关联后的数据是不支持可编辑的状态下导出的,但属性不正常显示时却支持,导出之后不一定会成功,我只成功过几次,估计是破解数据的问题,呵呵,此方法不推荐,成功几率太低)

第3条就是姐姐我遇到的问题。。。用Statistics也可以发现,其实数据是导进去了的,就是显示不出来。。。不过export data没用啊。

4. 数字字段的格式调整有时你会发现,属性表中明明有一个数值,导入到mdb后却成了NULL(空值),不要急,有办法解决!仔细查看excel,细心的你可能会发现有些数值的单元格左上角有个提醒标识,我也不知道它怎么产生的,反正是你可以在一个空单元格中输入数据1,然后复制,然后选中有问题的单元格,右键->选择性粘贴,选中“乘”,呵呵,正常了!通过这一步你会学到EXCEL的一个新功能,就是一组数据,你想进行单位转换(如平方米换公顷),但又不想在新的单元格使用公式A单元格=B单元格/10000创建实现,这个功能可以帮你大忙!

5. 自动换行问题的解决办法讨厌,明明是一个单元格,设计表格的人整了一个自动换行,结果导入到MDB后,换行以后的数据显示不出来了,双击它地却能正确显示。怎么办?有人说:单位元格属性->对齐->取消自动换行选项,再来个全选,再设置好最合适列宽!这办法我试了,不行:(于是呢,我就想要替换了它,结果网上找到一个牛人的方法—换行符大替换,呵呵。你首先要知道alt+10代表换行符,当数字小键盘上的NumLook灯亮着时,按着alt,依次按数据小键盘的1和0就可以了。替换成什么的地方不要填噢!不然就出错了

 

 

哈哈,虽然没有真正从根本上解决这个问题,但是可以正常做地图了。收获不少。1、Identity可以发现其实数据是Join上了,但是还是有几个字段的数据没法用。2、Join之后把Editor打开,Start Editing,打开属性表,就可以看到属性值了,激动啊,也可以操作了,但是在这期间不能关掉Editor!!

 

刚刚在网上看到说关键的问题所在,是ARCGIS对EXCEL里边的纯数字认得并不是太完美。所以就把Excel表中的关联字段从数字改成文本形式,在数字前面加一个单引号。但是结果仍然显示NULL,不知道是不是要把所有数据都改成文本格式(把要转的格子都选中,右键, 设置单元格格式, 格式里选文本, 确定就可以了)。。。。如果是这样,那。。。也有点复杂了。。。还是打开Editor直接作图吧 哎。



【本文地址】

公司简介

联系我们

今日新闻

    推荐新闻

    专题文章
      CopyRight 2018-2019 实验室设备网 版权所有