arcgis表转excel一直失败_数据图层之间总是对不上?ArcGIS与Excel衔接教程来啦

发布于:2023-04-27 ⋅ 阅读:(7613) ⋅ 点赞:(6)

【本期看点】

我们在学习和工作中会遇到这样的场景:我有一个Excel表格,比如获得的带有经纬度的POI数据、城市经纬度坐标数据,我们需要将他们落实到空间上去,这个时候大多数人会使用到ArcGIS。

但是使用的过程中会遇到一些问题,比如Excel加载不进去、数据导入之后跟原有的行政区边界不重合,让我们的制图过程变的并不是那么顺利,为此作者在此总结了ArcGIS与Excel衔接过程中产生的问题以及解决方法,希望能解决大家制图过程中遇到的问题。

本期投稿

刘海洋

西北师范大学人文地理学硕士研究生

主要从事地理空间大数据的挖掘、

分析和可视化工作,

熟练掌握GIS分析方法

场景一:Excel表格加载不进去

①大家在往ArcGIS里面加载数据的时候是不是会遇到下图出现的警告提示框(图1),这就说明你选择加载的数据是.xlsx格式的数据,ArcGIS不支持扩展名为.xlxs(也就是2003版本之后的文件)的表格数据,所以会出现警告信息,数据加载不进去,这时我们将数据转存为扩展名为.xls(Excel97-03文件)或者.csv格式的数据就可以了。

图1 xlsx格式表格加载进ArcGIS出现的警告提示框(左为中文版,右为英文版)

②转换为.xls文件之后,可能还会遇到问题,这主要是针对使用ArcCatalog对话框加载数据的伙伴(使用Add data按钮的伙伴已经跳过了这个误区),直接就将表格文件拖拽到Table of Contents对话框里面,就会出现下图中的情况(图2),这是因为我们要将表格文件展开,将sheet加载进去,这样就解决了问题,还要注意的是.csv文件只支持一个sheet,大家注意不要把多个sheet存到.csv文件中。

图2  未点选sheet加载进ArcGIS出现的警告提示框(左为中文版,右为英文版)

总结:表格必须是.csv或者.xls格式的数据,还应该选择表格里面的sheet进行加载。

场景二:加载进来的表格数据

与行政区边界不重合

表格加载进来后,使用“显示XY数据(Display XY Data)”之后数据与行政区边界不重合,比如图3中出现的情况(在这里用中国地图举例,点数据为部分城市坐标,小区域的情况一样):加载进来的点数据出现在图的最下方,跟行政区对应不上,就是在那个红点(图3-①),其实并不是一个点,只是缩略显示为一个点,放大之后是这样的(图3-②)。

图3  “显示XY数据”之后数据与行政区边界不重合

这时候我们可能又陷入了迷茫。这是因为我们选择的坐标系不合适,坐标系的知识点比较多,在这里只给大家讲能够解决这个问题的办法:

①将刚才显示XY数据之后产生的文件从Table of Contents移除;

②将整个数据框的坐标系设置成WGS1984地理坐标系;

③进行“显示XY数据”,生成的数据就会落到行政区里面;

④将整个数据框的坐标系转换为原来的坐标系,之后右击新生成的数据图层选择“数据—导出数据”,导出为shapefile数据,导出数据的时候注意点选与数据框坐标系统一致的按钮,而不是数据源的投影,这样shapefile数据的坐标系统就与行政区一致了;

具体操作步骤在场景三中会详细讲述,大家可以对照截图练习使用。

场景三:数据丢失了.prj文件,

与行政区对应不上

衍生出来的场景三:数据丢失了.prj文件,与行政区对应不上。熟悉shapefile数据组成类型的伙伴们都知道.prj文件是数据的投影信息,丢失它数据就对应不到原来的空间位置上,但如果我们不小心丢失了这个文件,需要怎么做才能补救回来呢?前几天作者就被问到这样一个问题:一个地区的公交线路数据缺失.prj文件,将公交线路数据加载进来不能落到行政区里,下面我给大家提供一个解决的示例办法。

先看一下遇到的问题,数据正常情况下是下图显示的(图4),蓝色面是某行政区面数据,红线是道路网。

图4  正常情况下道路和行政区相重合

丢失投影文件(.prj文件)之后加载数据就变成下图(图5):无法识别空间参考,丢失投影信息文件软件就识别不了数据的空间位置。

图5 丢失投影文件之后ArcGIS弹出警告

此时点击确定之后,会出现图6的情况:明明已经加载进图层,但行政区内并未显示道路。

图6 点击确定后,道路无法显示在行政区内

下面给大家分享一下解决办法:

我们依然会用到场景二中的方法,先将整个数据框的坐标系统改为WGS1984的地理坐标系。

1.查看整个数据框的坐标系统

整个数据框的坐标系统,是Xian 1980 3 Degree GKZone 35(图7)。

注意:这里给大家说一个小的知识点,ArcGIS自动识别第一个加载进来的数据的投影信息,因此在这里整个数据框也就是跟随行政区的投影信息一致,

图7  查看数据框的坐标系统信息

2.设置WGS1984坐标系,使道路数据在视觉上与行政区重合:

①找到WGS1984坐标系并选择,寻找WGS1984的流程是:Geographic Coordinate Systems—World—WGS1984(图8);

②点击确定,将整个数据框的坐标系统改为WGS1984(图8)。

图8 设置WGS1984坐标系

③查看效果:点击确定后,会发现原先没有落到行政区内的道路重新落到了行政区范围内(图9)。

图9  道路数据已经落到了行政区内

3.但这样并没有结束,道路数据只是在视觉上落到了行政区内,我们利用了动态投影的方法将道路重新落到了行政区内,实际上它仍然是缺失投影信息的道路数据,要怎样做才能让它真正地拥有坐标系信息呢?

①将道路数据导出(图10);

图10  导出数据

②导出数据的时候坐标系统一定要选择跟数据框的坐标系统一致(图11);

图11  点选跟数据框的坐标系统一致

③最后将导出的数据添加到图层中。

④打开导出数据的属性对话框,查看它的属性,可以看出数据已经具有了坐标系统信息,只不过是地理坐标系。

图12  查看所导出数据的坐标信息

4.如果需要将道路信息的坐标系与行政区保持一致,可以双击图层,打开数据框属性对话框;

①选择原来的Xian 1980 3 Degree GK Zone 35坐标系统(图13),点击确定。

(如果找不到的话可以事先收藏这个坐标系,方便以后使用,收藏按钮的位置在下图),当然如果你想选用其他坐标系统的话也可以。

图13  调整回Xian 1980 3 Degree GK Zone 35坐标系

②点击确定后,弹出来的对话框选yes,之后整个数据框就恢复了原来的坐标系,由于坐标系调整了,所以行政区的形状会变形哦(图14),东西方向上受到压缩。

图14  调整坐标系后行政区发生变形

③右击道路WGS1984图层,选择数据—导出数据(图15)。

图15  导出数据

④选择跟数据框一致坐标系,确定导出数据,注意:这次点选与数据框坐标系一致导出的数据就是Xian 1980 3 Degree GK Zone 35坐标系了,跟第3部分不一样,不要弄错了。

图16  点选跟数据框的坐标系统一致

⑤将导出的数据添加到图层中,这样跟行政区具有同样坐标系统的道路数据就生成了,最终结果如下图,解决了数据丢失.prj文件的问题。

图17  导出道路数据已经与行政区坐标系一致

本文转载自微信公众号:城市数据派,如需转载请联系城市数据派。

本站声明

本文仅代表作者观点,不代表城市数据派立场;

本文系作者授权城市数据派发表,未经许可,不得转载;

本网站上的所有内容均为虚拟服务,一经购买成功概不退款,请您理解。


网站公告

今日签到

点亮在社区的每一天
去签到