今天拿到一批从数据库导出来的经纬度坐标点;要求在ArcMap中转换成图层。折腾了几个小时,把步骤和要点大致写一下:
1.acess数据库首先检查经纬度的格式,ArcMap中导入只接受度格式(如115.7839, 47.5281 )的经纬度。其他格式如DDMMSSDD°MM′SS″;等都要转换成这个格式;我拿到的数据是DDMMSS格式的(如1153045471236)。
转换的方法有很多种,前提是要对Excel有点研究:-)INT(A1/10000)+INT((A1-INT(A1/10000)*10000)/100)/60+INT(A1-INT(A1/100)*100)/3600 这是一种方法,不过输这么多公式麻烦,也容易出错,我到了一个不容易出错的改进方法:
a.将文本转换成数字;数据--分列--分割符号--Tab键;完成就OK了。
b.选中要转换的一列,数据--分列--固定长度;把1153045分成1153045三列;然后新建一列公式为A1+B1/60+C1/3600ok。很快搞定。
2.因为Excel是没有表头的,所有导入ArcMap导入对话框中显示不出经纬度的列名,所以需要转成ACESS或者别的数据格式。新建一个ACESS,新建表-导入表,可以把Excel导进来,选择第一行为列名。
3.ArcMapl Tools-add xy data ;选择Access里的表,坐标系选择地理坐标系下的WGS84
这点很重要,一般GPS测出来的经纬度都是WGS84的。
4.投影转换成你想要的坐标系下,我一般直接添加到工程地图里让其动态投影。然后右键图层-输出,坐标系选择DataFrame,效果和用工具投影一样,不过更省事。