ArcMap的mxd文件没有数据、显示感叹号怎么办?

本文介绍在ArcMap 软件中,导入.mxd地图文档文件后图层出现感叹号地图显示空白等情况的解决办法。

ArcMap 软件使用过程中,我们经常会需要将包含有多个图层的.mxd地图文档文件导入软件中;例如,如下图所示,我们希望将名为测量标识1.mxd的地图文档文件导入ArcMap软件。

随后,我们可能会遇到如下图所示的错误情况------ArcMap 软件左侧图层列表中的每一个图层名称前都带有一个红色的感叹号,且在ArcMap软件右侧的地图显示区域也不包含任何图层。

出现这种问题的原因在于,ArcGIS 中的.mxd地图文档文件虽然含有各类图层,但其实际上仅仅包含了对这些图层的引用 ,而非图层数据本身 ;图层数据还是存储在其各自的.shp文件或地理数据库中。因此,一旦我们导入一个新的.mxd地图文档文件(例如从其他电脑中拷贝过来的一个.mxd地图文档文件),就可能导致ArcMap 软件虽然知道这个.mxd地图文档文件应该包含有哪些图层 (即可以显示图层数量与图层名称),但是这些图层的具体数据ArcMap软件没有办法找到(即在图层名称左侧出现红色感叹号)。

针对这一情况,其解决办法也是很简单的。首先,我们需要保证当前电脑中含有.mxd地图文档文件所涉及到的全部图层 的数据文件(即其各自的.shp文件或地理数据库);随后,在出现红色感叹号的图层名称处右键,选择"Data "→"Repair Data Source..."选项。

接下来,在弹出的"Data Source "窗口中,找到当前图层对应的其自身的数据文件。例如,我刚刚是在测量标识1_mxd这个图层上右键的,那么我就需要在这个窗口中找到其对应的数据文件------测量标识1_mxd.shp,并单击"Add"即可。

随后,可以看到测量标识1_mxd这个图层已经不再显示红色感叹号,且右侧亦可以正常显示其具体地图。

这里还有一点需要注意,由上图可以看出,我们尽管仅对测量标识1_mxd这一个图层进行了上述操作,但是整个.mxd地图文档文件所包含的三个图层都已经可以正常显示了。这是因为这三个图层的自身数据都存储在同一个路径下(在同一个文件夹里),因此当我们对.mxd地图文档文件其中的任何一个图层进行上述操作时,ArcMap 软件会自动将其他同一路径下的图层也匹配起来,从而使得.mxd地图文档文件的全部图层一次性都完成了匹配。

如下图所示,可以看到刚刚我们在弹出的"Data Source "窗口中不仅包含了测量标识1_mxd这个图层的数据文件测量标识1_mxd.shp,同时还包含了.mxd地图文档文件中另一个图层测量点(带经纬度)的数据文件测量点(带经纬度).shp

再如下图所示,可以看到同样是在同一路径下,还包含了.mxd地图文档文件中第三个图层(就是这个名字很长的.bmp文件)的数据文件。

因此,我们只需要对上述.mxd地图文档文件中的一个图层执行操作,剩余两个图层都会自动匹配。当然,如果一个.mxd地图文档文件中的图层数据存储在不同的文件夹下,那么就没有办法实现一次性匹配了,有多少个文件夹就至少需要执行上述操作多少次。

此外,我们可以通过两种办法来避免每一次打开新的.mxd地图文档文件就出现红色感叹号、需要手动匹配数据的情况。

首先,第一种方法是在ArcMap 软件上方选择"Customize "→"ArcMap Options..."选项。

随后,在弹出的"ArcMap Options "窗口中选择"General "一栏,并将"Make relative paths the default for new map documents"这一项选中。

通过这样的方式,ArcMap 软件在今后保存.mxd地图文档文件时,都会自动将其所包含图层的自身数据的相对存储路径 记录下来;这样子在其他电脑打开.mxd地图文档文件文件时,ArcMap 软件就可以依据这个相对存储路径 自动匹配图层数据,就不用我们通过上述操作来手动匹配了。这一种方法是一劳永逸的,今后不论是哪一个.mxd地图文档文件,都会自动存储图层数据的相对路径。

此外,还有一种方法,就是在要保存.mxd地图文档文件时,选择"File "→"Map Document Properties..."选项。

在弹出的"Map Document Properties "窗口中,选择将"Store relative pathnames to data sources"这一项选中。

这一方法和前述第一种方法的原理一致,只不过第一种方法是让ArcMap 软件在今后保存所有的.mxd地图文档文件时默认存储相对路径,第二种方法是仅仅针对当前这一.mxd地图文档文件保存相对路径;因此,推荐大家直接用第一种方法来实现。

相关推荐
青山Coding3 小时前
Cesium应用(二):基于heatmap.js 的全球气象可视化实现方案
前端·gis·cesium
青山Coding4 天前
Cesium应用(一):解决 Cesium 海量船舶轨迹点渲染难题:轨迹数据池方案实践
gis·cesium
allenjiao5 天前
Cesium粒子系统模拟风场动态效果
javascript·arcgis·gis·webgl·cesium·三维·风场
杨超越luckly7 天前
HTML应用指南:利用GET请求获取全国Apple Store 零售店位置信息
大数据·前端·arcgis·html·数据可视化·门店
典学长编程7 天前
前端开发(HTML,CSS,VUE,JS)从入门到精通!第八天(Vue框架及其安装)(完结篇) 重点 ! ! !
arcgis·vue·vue路由·vue脚手架·router
Wild Iris9 天前
【ArcGIS】分区统计中出现Null值且Nodata无法忽略的问题以及shp擦除(erase)的使用——以NDVI去水体为例
arcgis
YGY_Webgis糕手之路9 天前
OpenLayers 综合案例-切片坐标与经纬网调试
前端·gis
新中地GIS开发老师11 天前
2025Mapbox零基础入门教程(14)定位功能
前端·javascript·arcgis·gis·mapbox·gis开发·地理信息科学
是李嘉图呀11 天前
vue3+ cesium报错.vite/dep路径找不到静态资源
前端·gis
YGY_Webgis糕手之路11 天前
OpenLayers 综合案例-加载gif图
前端·gis