一、加载数据

1.首先加载需要的shp数据

使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_


二、删除字段:1.属性表中的字段很多,数据量又大,导致arcgis闪退了好几次,考虑先删除一些不用的字段(处理前的数据需要做好备份)。(1)删除字段的步骤:首先在工具箱中搜索“数据管理工具”,并单击,选择“字段”。


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

(2)单击字段,选择删除字段


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

(3)在删除字段的输入表中选择需要删除字段的shp,在删除字段中选择需要删除的字段,点击确定,则选中的字段被删除。


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_


三、生成shp面中心点坐标

1.打开shp文件的属性表,即在图层列表中选中shp文件,右键-打开属性表2.在属性表中添加字段:在点击属性表左上角第一个图标,选择添加字段。

使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

3.在弹出的对话框中填写字段名称“X坐标”,类型为“双精度”;再以同样的方式再添加一个“Y坐标”的字段


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

4.在属性表中选择新添加的“X坐标”字段,右键选择“计算几何”


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

5.再弹出的对话框中进行如下设置:属性选择“质心的X坐标”,其他的按照下图设置,然后点击确定


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

6.以和上两步同样的方法计算"Y坐标”,这次属性选择“质心的y坐标”,并点击确定。7.属性表中X坐标和Y坐标均计算完毕,可以看到计算完是公里网格坐标,不是经纬度的坐标。


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_


四、将上面生成的公里网格坐标转化为经纬度坐标1.首先将shp文件中的.dbf文件拖入Excel打开,然后另存为csv格式文件(或者在arcgis中用“表转excel”工具直接导出属性表的excel,两种方法应该都可以,但是我今天“表转excel”的时候失败了,所以选择了用excel 打开)


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

2.将上一步另存为的csv文件导入arcgis中,并右击选择“显示xy坐标”


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

3.在弹出的对话框中按如下设置,x字段是在生成shp面中心点坐标中计算得到的“X坐标”(详见本文:三、生成shp面中心点坐标)。同样,Y字段是在“Y坐标”,坐标系一般会自动匹配,检查无误后,点击确定。


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

4.利用“转换坐标记法”工具,参数设置如下,输出坐标系可以按需要选择,这里选择“GCS_WGS_1984”坐标系,点击确定。

转换坐标记法工具的详细介绍:https://desktop.arcgis.com/zh-cn/arcmap/10.5/tools/data-management-toolbox/convert-coordinate-notation.htm


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

5.坐标转换完成,DDLat就是WGS1984坐标系下的纬度坐标,DDLon就是WGS1984坐标系下的经度坐标。


使用python脚本批量修改Arcgis的数据字段别名 arcgis属性表批量替换字段名_

参考资料

1.https://jingyan.baidu.com/article/6f2f55a14949e5b5b93e6cbb.html

2.http://www.cegong.com/5768.html?postid=5768&wpzmaction=add