Acgis中实现栅格经纬度和行政区关联

写在前面

我是一个Acgis小白,写这篇博客是为了记录完成过程,如果有更高效的办法欢迎分享~ 我用的是Arcgis10.2。

需求描述

目前已有意大利的shp文件,希望将意大利划分成0.1*0.1经纬度的栅格,并且关联每个栅格中心点所属的省份信息。最终希望得到的输出是一个表格,里面包含栅格的经纬度、所属省份信息。

PS. 安利一个下载全球shp文件的好用的网址(https://www.diva-gis.org/gdata)。

问题分析

要实现我上面的操作,需要把整个过程拆分成如下步骤:

  1. 导入意大利的省级shp文件(这是面数据);
  2. 将shp文件转为栅格(面数据 转 栅格数据);
  3. 将栅格数据转为点数据(这样才能得到经纬度);
  4. 给点数据增加经纬度信息;
  5. 将面数据和点数据进行关联;
  6. 将数据导出为表格。

1、导入意大利的省级shp文件(这是面数据);

步骤略。

Acgis中实现栅格经纬度和行政区关联_第1张图片

 2、将shp文件转为栅格(面数据 转 栅格数据);

首先,打开工具箱

Acgis中实现栅格经纬度和行政区关联_第2张图片

 找到转换工具->转为栅格->面转栅格

Acgis中实现栅格经纬度和行政区关联_第3张图片

输入要素就是第一步导入的shp图层

 Acgis中实现栅格经纬度和行政区关联_第4张图片

然后就可以得到转为栅格的数据,如下

Acgis中实现栅格经纬度和行政区关联_第5张图片

  3、将栅格数据转为点数据(这样才能得到经纬度);

因为栅格数据的经纬度是一个范围,为了得到栅格中心点的经纬度,就需要把栅格转成点。

转换工具->由栅格转出->栅格转点

Acgis中实现栅格经纬度和行政区关联_第6张图片

这一步的数据就是上一步得到的栅格图层

 Acgis中实现栅格经纬度和行政区关联_第7张图片

 这样就可以得到点数据了,如下:Acgis中实现栅格经纬度和行政区关联_第8张图片

 4、给点数据增加经纬度信息;

打开“点图层”的属性表格

Acgis中实现栅格经纬度和行政区关联_第9张图片

 Acgis中实现栅格经纬度和行政区关联_第10张图片

 可以发现面数据已经被转成了3308个点,但是这些点的经纬度信息还没有,这需要我们人为添加。

下面添加两个字段,分别是"lat"和“lon”,添加方法如下。值得注意的就是,数据类型需要选“双精度”。

Acgis中实现栅格经纬度和行政区关联_第11张图片Acgis中实现栅格经纬度和行政区关联_第12张图片

 字段添加完毕后,右击列名,选择“计算几何“,便可以得到经纬度。需要注意的是,lon对应X坐标,lat对应Y坐标。

 Acgis中实现栅格经纬度和行政区关联_第13张图片Acgis中实现栅格经纬度和行政区关联_第14张图片

 通过上述操作,就可以得到每个点的经纬度了。

Acgis中实现栅格经纬度和行政区关联_第15张图片

5、将面数据和点数据进行关联;

右击“点”图层->连接和关联->连接。

Acgis中实现栅格经纬度和行政区关联_第16张图片

 Acgis中实现栅格经纬度和行政区关联_第17张图片

 这样就可以得到一个关联后的点图层,如下:

Acgis中实现栅格经纬度和行政区关联_第18张图片

打开这个图层的属性表,可以发现,既有经纬度信息,又有行政区划信息。

Acgis中实现栅格经纬度和行政区关联_第19张图片

6、将数据导出为表格。

接下来导出数据就大功告成了!

导出数据一共有三种方法,这里都介绍一下吧。

方法一:复制粘贴大法。

直接ctrl A + ctrl C + ctrl V 当然是不行的。这样只能复制表格中一个cell的信息。

正确的打开方式是先对表格进行全选,然后对着空白处右键,选择“复制所选项”。

然后在本地新建一个空白的excel,直接粘贴进去即可。

这个方法适合数据量不是很多的情况,如果数据量太多,就会卡死。

Acgis中实现栅格经纬度和行政区关联_第20张图片Acgis中实现栅格经纬度和行政区关联_第21张图片

方法二:转换工具大法。

打开工具框,找到“转换工具”->Excel->表转Excel。

Acgis中实现栅格经纬度和行政区关联_第22张图片

 Acgis中实现栅格经纬度和行政区关联_第23张图片

 这个方法有一个限制,就是行数超过65535就会导出失败。

方法三:DBF大法。

打开属性表,选择“导出”,这里的数据格式是dbf。

把文件导出后,dbf后缀直接改成csv,就可以用excel打开表格了。

Acgis中实现栅格经纬度和行政区关联_第24张图片Acgis中实现栅格经纬度和行政区关联_第25张图片

这个方法适用于数据量特别大的情况。如果遇到如下问题:

Acgis中实现栅格经纬度和行政区关联_第26张图片

可以把导出的数据类型改成txt,然后再用Python或什么方法,txt转成excel吧。

Acgis中实现栅格经纬度和行政区关联_第27张图片

大功告成!

最后,感谢我的导师,今天中午他在百忙之中教会了我上面的操作,希望这个博客可以帮到更多需要的人,感恩!

你可能感兴趣的:(arcgis)