☰
ArcGIS10配套实验数据从解压到跑通:坐标系、格式转换与避坑指南
2026/10/8 5:07:17 网站建设 项目流程

简介:这份《ArcGIS10从入门到精通(牟乃夏版)》配套实验数据以rar格式打包,压缩包体积约203.43MB,专为GIS初学者与希望系统提升ArcGIS操作水平的读者设计。压缩包内附多个章节对应的练习案例,覆盖数据导入与管理、矢量编辑、地图符号化与制图输出、缓冲区和叠置分析、地理编码、遥感影像处理、三维地形构建以及Web地图发布等常见应用场景。每个实验都配有分层数据文件,方便读者在软件中同步操作、对照检查。目前已有3370人学习下载,是自学、教学与项目实践中常用的辅助素材。通过完成这些实验,使用者不仅能熟悉ArcGIS10的界面和工具链,还能掌握从基础数据整理到高级空间分析的完整流程,形成解决实际地理问题的实操能力。

1. 从一份解压就翻车的配套实验数据说起:ArcGIS10追书实验的完整启动路径

大多数自学者下载到ArcGIS10从入门到精通牟乃夏版配套实验数据.rar之后,第一反应都是先解压,再把里面的 .mxd 拖进 ArcMap 试一试。结果往往很一致:图层列表上一排红色感叹号,地图窗口一片空白,教材前三十页还没翻完,信心已经凉了半截。这个压缩包并不只是“附加素材”,它本身就是每章实验的输入原料:shp 矢量、tif 栅格、file gdb、个人数据库 mdb 全混在一起,教材里每张专题图都靠它们撑起来。这篇笔记不评价教材优劣,只讲拿到这份数据之后,从解压到跑通实验的完整路径——哪些文件能直接用、哪些格式必须转、坐标系为什么是最容易被忽略的黑匣子,以及我踩过的几个坑。适用人群很明确:零基础自学、备考 GIS 证书、被课程作业要求复现实验的人;如果你已经能熟练建个人数据库,这篇里的数据体检思路也值得一看。

2. 解压这套 ArcGIS10 配套数据:目录结构、数据格式和最小实验清单

先强调一句:解压这一步决定了后面三小时的体验。绝大多数配套数据包之所以“打开是坏的”,不是数据文件损坏,而是解压路径、目录层级和文件扩展名被系统或解压软件改动了。把压缩包当成一个普通软件包去处理,是第一个容易翻车的地方。

2.1 别把压缩包解压到默认下载目录:长路径和中文路径的定时炸弹

Windows 下如果直接双击 rar,WinRAR 默认解压到“当前目录\压缩包名\”,这条路径常常本身就是中文加空格的长路径。ArcGIS10 对路径长度为 255 字符的限制相当顽固,超过之后,地图文档里的数据源会显示为不可访问,而实际文件还好好的躺在那里。我一般会在 D 盘或 E 盘一级建一个纯英文短目录,例如D:\gisdata,然后把 rar 放到这里再解压。

常见做法是在 cmd 里用 7-Zip 的命令行解压,可控性比右键解压高:

7z x "D:\downloads\ArcGIS10从入门到精通牟乃夏版配套实验数据.rar" -o"D:\gisdata\book" -y

参数说明:x表示解压并保留目录结构;-o后面紧跟的目标目录不能有空格,否则命令会被拆成两个参数;-y表示遇到覆盖确认时自动回“是”。解压完成后,立刻用dir /s /b查看完整文件清单,而不是点开资源管理器一层层翻,因为资源管理器会悄悄折叠掉隐藏的系统文件,也会把扩展名隐藏掉,这对 ArcGIS 数据不是好事。

当压缩包解压完成后,建议做一次“文件级健康检查”:统计一下目录里是否存在 .shp、.tif、.gdb、.mdb 这几类核心格式,数量能否和教材章节大致对上。下面的 PowerShell 命令可以递归输出这些扩展名的文件数:

Get-ChildItem -Path "D:\gisdata\book" -Recurse -Include *.shp,*.tif,*.gdb,*.mdb | Group-Object Extension

这个命令会按扩展名分组,直接告诉你数据包里每一种格式的数量。如果某种格式数量为零,说明压缩时漏掉了数据,或者扩展名被改写过。拿到这个统计之后,再对照教材每章的实验标题,基本能判断这份数据是否完整,省得后面跑到第 8 章才发现变量缺失。

2.2 认识数据包里的四种“数据格式”:哪个是文件夹,哪个是活页夹

ArcGIS10 里最容易让新手迷惑的是:.gdb 不是单个文件,而是一个文件夹;.mdb 是一个 Access 数据库文件;而 .shp 由至少三个同名文件构成。很多人在给同学传数据时,只拷贝了 .shp 而留下了 .shx 和 .dbf,结果对方打开后属性表全空,这就是典型的“三个文件少一个”事故。

格式真实形态在 ArcGIS10 里的用途常见误区
.shp/.shx/.dbf/.prj一组同名文件最基础的矢量交换格式只拷一个 .shp,属性表和几何丢失
.tif/.img单个文件带辅助文件栅格影像、DEM、土地利用漏拷 .tfw 或 .aux.xml,坐标系和统计信息丢失
.gdb 文件夹目录(File Geodatabase)存储要素类、栅格目录、拓扑用资源管理器拷了一半,gdb 损坏
.mdb单个 Access 数据库个人地理数据库(Personal Geodatabase)64 位 Office 环境下读取困难

判断数据包内容健康度的另一个标准,是看每个实验文件夹里有没有一个可打开的“入口”图层,比如 Chapter3 里应该有土地利用栅格、行政边界 shp 和结果 mxd。没有 mxd 也没关系,数据就是原料;但 .shp 和 .dbf 必须齐全,因为 ArcGIS10 读取属性表时完全依赖 .dbf。

2.3 最小实验清单:拿到数据后先测三个“能不能”

我不建议拿到压缩包就顺着书从头做实验。我习惯先做一个“能不能”清单:能不能打开矢量、能不能叠加栅格、能不能读属性表。如果能,这套数据基本可用;如果不能,先解决数据包本身的问题,再进入实验复现。

打开矢量用 ArcCatalog:右键预览,如果几何和属性都能显示,说明坐标系即便未定义,几何坐标也是健康的;栅格则在 Catalog 里看统计直方图,如果显示“无统计值”,符号化很容易全黑;属性表则用“打开属性表”看字段,.dbf 的编码问题在这里暴露得最快。这三个检查只需要几分钟,却能筛掉后续 70% 的“实验失败”——因为我见过太多人花一下午调一个工具,最后问题出在源数据的字段类型上。

3. 复现实验前先过三道预处理:坐标系定义、工作空间统一和地图文档路径修复

我见过很多人拿到这本书配套数据后的第一动作,是把 shp 直接拖进 ArcMap,看到图层“叠上去了”就认为实验开始。然后到叠加分析时,输入的两个图层错开几十公里,才意识到坐标系没处理。这不是数据包的问题,而是 ArcGIS10 的工作机制:数据自身记录真实坐标,但缺少投影信息时,显示层会默认套用数据框坐标系,一旦数据框是 WGS84 而数据本身是西安 80,不检查范围根本发现不了。

提示:压缩包内数据若本身是西安 80 或北京 54,而你全脚本用 WGS84 去 Define,后面叠加会错位几十米。先看数据附带文档,不要盲目定义。

3.1 ArcGIS10 地图文档中的“路径依赖”:.mxd 不复制数据,只记地址

首先要转变认知:.mxd(地图文档)只是数据源的“电话本”。它不保存数据本身,只记录每一个图层的存储位置和符号设置。所以你移动了数据文件夹,或者把 mxd 拷给别人,mxd 还按老地址找数据,找不到就显示红色感叹号。ArcGIS10 里有个选项叫 Store relative pathnames(存储相对路径),默认很多教程数据是没有勾选的,于是变成了绝对路径绑定。

我处理教材数据时,第一步就是把书里的 mxd 统一放到一个目录,例如D:\gisdata\book\,数据也放在同一个大目录下,然后打开 ArcMap,用 File > Map Document Properties 勾选“Store relative pathnames”。这样 mxd 和数据的相对关系固定下来,整本教材的数据换个机器也能正常打开,不会出现“在我电脑上能开,发给你就打不开”的经典尴尬。

3.2 用 ArcPy 批量定义坐标系:DefineProjection 和 Project 的区别

配套数据里最常见的问题是 .shp 和栅格的坐标系信息缺失。缺失的严格叫法是“undefined Coordinate System”,在 Catalog 里 SR 字段为 Unknown。解决这个问题需要区分两个工具:

工具作用适用场景
Define Projection只写入坐标系信息,不改动坐标数值数据本身坐标值正确,只是缺失 SR
Project真正的坐标转换,会重新计算几何坐标数据坐标值需要转到另一个坐标系

很多新手把 Project 当成了“定义坐标系”,对着一份本来就是 WGS84 的数据执行了 Project,结果坐标值被二次变换,数据彻底跑飞。这个操作几乎无法还原,所以做之前最好给数据留一份备份——我就吃过这个亏。

批量定义坐标系可以用 ArcPy 脚本跑,比如把某个实验文件夹里所有 shp 统一定义为 WGS 1984:

import arcpy, os arcpy.env.workspace = r"D:\gisdata\book\Ch03" out_ws = r"D:\gisdata\book\Ch03_out" if not os.path.exists(out_ws): os.makedirs(out_ws) target_sr = arcpy.SpatialReference(4326) # WGS84 for shp in arcpy.ListFeatureClasses("*.shp"): desc = arcpy.Describe(shp) if desc.spatialReference is None or desc.spatialReference.name == "Unknown": arcpy.DefineProjection_management(shp, target_sr) print("已写入SR:", shp) elif desc.spatialReference.name != "WGS_1984": arcpy.Project_management(shp, os.path.join(out_ws, os.path.basename(shp)), target_sr)

脚本逻辑不复杂:遍历当前工作空间下的 shp,先判断坐标系未知,未知就写入目标坐标系;已知但不是目标坐标系,则执行真正的坐标系转换,并把结果输出到另一个目录。这里特别要注意:如果坐标系未知,不要用 Project,因为没有任何依据能判断坐标值应该被转成什么,写进去的 SR 只是声明,不代表数值是正确的。这也是定义坐标系被称为“玄学”的原因——它依靠的是数据来源说明和肉眼比对范围,而不是脚本能自动判断的。

3.3 用统一文件地理数据库收纳全套数据:解决“输入输出散落一地”

ArcGIS10 对个人数据库(.mdb)和文件地理数据库(.gdb)的支持差异很大,教材里有些实验数据使用 .mdb 存储,到了 64 位机器上经常读取失败。我的习惯是在做实验前,先把能转的数据全部导入一个新的 File Geodatabase,例如D:\gisdata\book\book_data.gdb。这样做的理由有三个:一是文件地理数据库对中文路径和长文件名容忍度更高;二是处理速度更快,尤其批量叠加分析;三是后续用 ArcPy 写循环脚本时,输入输出路径都在同一个工作空间,不容易漏掉某个子目录。

导入可以用 Catalog 右键逐个 Export,也可以用 arcpy.FeatureClassToFeatureClass 批量转。我刚接触这本书时用的是手动方式,后来数据多了才发现手动导入的字段类型也会被默认调整,比如长度 50 的文本型字段会在导入后变成 255,之后用 Join 做关联时总是匹配不上。现在我会额外检查字段长度,并把所有文本字段统一设置为合适的长度;栅格数据则用 Copy Raster 工具转入 gdb,顺便把像素类型和 NoData 值也一并规范化。

展示一段批量导入 gdb 的脚本:

import arcpy, os src = r"D:\gisdata\book\Ch04" dst_gdb = r"D:\gisdata\book\book_data.gdb" arcpy.env.workspace = src for shp in arcpy.ListFeatureClasses("*.shp"): out_name = os.path.splitext(os.path.basename(shp))[0] arcpy.FeatureClassToFeatureClass_conversion( shp, dst_gdb, out_name, expression="", field_mapping=None, config="") print("已导入:", out_name)

这段代码中,expression传空字符串表示导出全部记录,field_mapping没传值,意味着 ArcGIS10 会按源数据字段自动创建目标字段。实践中我会用 arcpy.FieldMappings 事先把字段长度和别名调整好再批量导入,否则后面做字段关联时,很可能因为默认生成的字段类型与教材示例不一致而翻车。参数上如果遇到含空间的 shp,要格外注意config关键字——我这里写空字符串表示使用 gdb 默认配置;如果你做的是大量数据并发写入,可以指定几何网络或拓扑配置参数,但那不是在入门阶段需要考虑的事。

这里再提一个很现实的坑:如果实验数据里有栅格,直接 FeatureClassToFeatureClass 是不认的。ArcGIS10 里栅格进 gdb 要通过 Copy Raster 工具,并且它默认会生成一个栅格数据集。有人误选“作为目录”导入,结果拓扑测量工具找不到该栅格,这属于“功能位置对了但容器类型不对”,一时半会很难排查。

4. 把第一张专题图跑出教材效果:地理配准、栅格重分类与矢量叠加的参数设置

数据预处理结束后,就可以真正跟着教材做实验了。注意这里的“跟着做”不是把工具点一遍,那样你复现的只是界面操作,不是方法本身。教材里任何一张输出图,都隐含了三个关键参数:地理配准的残差控制、栅格重分类的等级设置、以及叠加分析的字段映射。这三件事,恰好是 ArcGIS10 从入门到熟练的标志。

4.1 地理配准:栅格图“贴”到真实坐标的四个操作顺序

地理配准常见于扫描地形图、历史影像、或者一张没有坐标信息的图片。在牟乃夏版配套数据里,一般会给你一张无坐标的栅格图和一个已知坐标的矢量图层。ArcGIS10 里做配准前,一定要先在 View 菜单里打开“Georeferencing”工具条,并先把待配准栅格设为当前数据框的可见图层。

操作顺序我总结为四步:第一步,加载待配准栅格到 ArcMap,此时数据框坐标未知;第二步,用 Control Points 工具依次添加至少四个控制点,控制点要尽量分散在图的四个角,避免只在一侧取点;第三步,打开 View Link Table,看残差表(RMS Error)是否小于一个像素;第四步,在 Georeferencing 菜单里选择“Update Georeferencing”把变换结果永久写回图像。最常见的问题是有人跳过第三步,控制点不够或点数集中在一侧,RMS 误差达到几十,地图角落严重扭曲,却还在强行叠加分析。控制点不是越多越好,分布均匀且残差在可接受范围内的四到六个点,通常比二十个挤在一团的点好用。每一次配准都建议保留原始栅格副本,因为 Update Georeferencing 会直接修改原文件,没有后悔药可吃。

4.2 栅格重分类与区域统计:类数、断点和 NoData 是三个必调参数

注意:浮点栅格直接重分类会报错或得到不合理结果,先取整或先生成断点。

配套数据的栅格实验里,重分类(Reclassify)大概是翻车率最高的工具。现象往往是“我设了 10 个类,但输出只有 2 个类”。这种时候不要怀疑软件 bug,而是去查原始栅格的值域分布:多数 DEM 或土地利用数据是浮点型,浮点栅格重分类的 Remap 必须逐值列出,不能像整数型栅格那样直接给断点。ArcGIS10 中,如果原始栅格是浮点型,建议先用 Int 工具取整,再重分类;或者使用 Reclassify 对话框里的“Classify”按钮先生成断点,再调整边界值。

对教材实验来说,我更推荐直接用 ArcPy 脚本控制参数,可复现性比对话框强。比如把 DEM 按高程重新分为三级:

import arcpy from arcpy.sa import * arcpy.CheckOutExtension("Spatial") in_raster = r"D:\gisdata\book\book_data.gdb\dem" remap = RemapRange([[0, 50, 1], [-9999, 0, 0], [50, 150, 2], [150, 500, 3]]) out_reclass = Reclassify(in_raster, "Value", remap, "NODATA") out_reclass.save(r"D:\gisdata\book\book_data.gdb\dem_lv") # 区域统计:把重分类结果按行政区边界统计 remap_dem = arcpy.Raster(r"D:\gisdata\book\book_data.gdb\dem_lv") zones = r"D:\gisdata\book\book_data.gdb\boundary" tbl = ZonalStatisticsAsTable(zones, "OBJECTID", remap_dem, r"D:\gisdata\book\zone_stats.dbf", "DATA", "ALL") print("Zonal statistics table written:", tbl)

这段代码里,RemapRange 的每个子列表格式是 [最小值,最大值,输出值],区间包含最小值但不包含最大值;NODATA 关键字的作用是让原始 NoData 在输出中继续保留为 NoData。这里有一个优先级问题:如果某个值同时属于多个区间,ArcGIS10 会报错,所以区间边界不能重叠,否则脚本就会中断。区域统计表输出为 .dbf 时要留意,后续要按行政区 ID 做 Join 时,字段类型不一致会导致匹配不上;shp 里的 ID 字段是 FID,导入 gdb 后就变成 OBJECTID,写得不对统计表会直接为空。

4.3 符号化与标注:能复现出教材截图的关键设置

很多人在 ArcGIS10 里遇到“数据是对的,图就是不绿不蓝”的困扰。栅格符号化有自己的一套逻辑:在 Layer Properties > Symbology 里选择 Classified,然后设置分类方法和类别数,最常用的 Stretch 类型是 Percent Clip,并把统计值设置为“从当前显示范围计算”而不是全局统计,否则当地图缩放后栅格颜色会跳跃,输出图片和教材不一致。做土地利用专题图时,我更倾向于给每个地类指定一个颜色(即 Unique Values),而不是用渐变,因为教材中的图一般强调类别区分,而不是数量递进。

标注方面,ArcGIS10 的标注引擎默认会把所有属性字段当作短整型处理,中文注记容易变成问号。配好符号之后还应该检查一下“Reference Scale”和“Label Expression”——如果表达式返回的是数值,要在代码编辑器里写成str(int(字段值)),才能正常显示。我第一次做这种实验时就在这个问题上耗了一个多小时,后来发现不过这关上一步加再多也白搭。

5. 配套实验数据避坑指南:5 个最常见的翻车现场与排查记录

这套数据本身是“教材附属品”,质量参差不齐,最常见的翻车现场我总结了 5 个,按照我从书里第一次实验到现在辅导学生遇到频率排序。每个现场都按“现象→原因→处理”来讲。

5.1 场景一:地图文档里一片红感叹号,图层完全看不到内容

现象:打开下载好的 .mxd,图层列表还在,但每个图层前面是红色感叹号,双击图层属性里的 Source 选项卡显示数据源不可访问。

原因:.mxd 记录的是数据路径,而下载的数据往往被改名、搬目录、或者在解压时产生了多一层嵌套文件夹。如果书里数据是放在 Chapter2,而你把整个压缩包解压到了 data\Chapter2\Chapter2,路径就失效了。另一个原因是文件被 Windows Defender 或杀毒软件隔离,导致路径存在但文件不在。

解决:先确认物理文件位置,然后在图层上右键 > Data > Repair Data Source,把路径重指到真实位置。如果有多个图层断源,用 ArcCatalog 里的“Set Data Source”批量修复会更高效,这也再次说明为什么我在第 3 章坚持把所有数据先归入统一工作空间。处理以后打开图层面板,检查每个图层的坐标系和坐标范围是否和教材一致,这一步能顺带发现其他隐患。

5.2 场景二:栅格图层打开全黑或全白,符号化怎么调都没有变化

现象:DEM 或土地利用栅格拖进来,地图窗口里整块黑或整块白,用 Stretch 调整最大最小值也没反应。

原因:多数情况下是栅格没有统计值(Statistics)或者统计值计算范围只覆盖了单波段某一小块。ArcGIS10 在显示浮点栅格时,默认要基于全图统计值做拉伸,当统计信息缺失或过时,显示层就会退化到最值两端,看起来就是黑色块。教材配套的某些 tif,在压缩前统计信息被删掉了,打开后自然翻车。

解决:在 Catalog 里右键该栅格,选择 Calculate Statistics,让 ArcGIS10 重新扫描全图统计值;之后回到 ArcMap 在 Symbology 里把 Stretch 类型改成 Percent Clip,再调整裁剪范围到 2%~98%。如果栅格数据量特别大,计算统计值会占很长时间,但这是必须的过程,跳过这一步,后面做重分类时也会碰到值域错误。

5.3 场景三:两个图层坐标范围相差几十公里

现象:明明同一区域的两个 shp,叠加时一个在左一个在右,或者面要素和点要素完全不搭边。

原因:两个数据的坐标系不一致或坐标系未定义。ArcMap 数据框在加载多个数据时,默认采用第一个图层的坐标系;如果第二个图层坐标系未知,它不会自动转换,只按照原坐标系数值直接绘制,于是错位。很多时候数据本身是西安 80 或北京 54,却被人为标成了 WGS84,这种情况不检查坐标范围根本看不出来。

解决:先用 ArcCatalog 的预览看每个 shp 的 Extent 值,如果一套数据 XY 范围是几十万级别的坐标(如 38575232, 4352312),另一套是百位数(如 110.5, 34.2),明显不是一套坐标系。确定之后,对未知坐标系数据执行 Define Projection,对已知但非目标坐标系的数据执行 Project,再叠加。这里最该强调的是:Define 和 Project 千万不能混用,我的血泪经验是,做之前先把原始数据备份一份,操作错时还能退回原点。

5.4 场景四:属性表打开后中文全乱码

现象:.shp 或 .dbf 属性表里的汉字变成“??三”“鈥渓”之类的乱码,有些字段显示为问号。

原因:ArcGIS10 早期版本读取 .dbf 时依赖代码页,默认的编码和中文 GBK 不匹配。新建 shp 时如果代码页是 UTF-8,而 ArcGIS10.0~10.2 按系统 ANSI 读,就会出现乱码。教材配套数据有的在生成时混合了不同编码,这现象堪称玄学,即使重装软件也未必能解决。

解决:用 ArcToolbox 里的 Export Features 工具,把乱码的 shp 转成文件地理数据库中的要素类,导出过程中可以对字段和编码进行重新映射。或者用 ArcMap 的 Table Options > Export,将属性表导出为 dbf 后,检查代码页设置。说实话,这类问题没有百分之百的通用解法,我最后的兜底办法是直接读原始 .dbf 文件,用文本编辑器把字段值重新核对,再重建属性表。虽然麻烦,但对于一套教材数据来说,花二十分钟换回后续实验的顺畅,值得。

5.5 场景五:.mdb 数据库打开失败或只能只读

现象:双击 .mdb 文件,ArcGIS10 弹出“个人地理数据库打开失败”或连上后无法编辑,工具处理时提示“表不存在”。

原因:.mdb 是 Microsoft Access 格式,ArcGIS10 需要本机有 32 位的 Access Database Engine 才能读写。在 64 位 Windows 且安装了 64 位 Office 的机器上,ArcGIS10 往往只能读到数据但无法重建索引,甚至直接打不开。个人地理数据库对中文文件名也敏感,如果 .mdb 放在中文目录下,更容易在连接时返回虚假错误。

解决:优先把 .mdb 里的数据迁移到 File Geodatabase。在 ArcCatalog 里连接到该 .mdb,然后右键每个要素类,Data > Export > To Geodatabase。如果连 .mdb 都打不开,可以尝试用 ArcGIS10 自带的“Conversion Tools > Personal Geodatabase to File Geodatabase”批量转换;还不行就换一台 32 位环境的机器导出,或安装对应位数的 Access Database Engine。这个兼容性边界,我建议在开始学这本书时就记住,因为后续很多教材原文的“个人数据库”操作,最终都会落到这同一个坑里。

6. 给整套实验数据建立体检脚本:用数据字典校验每个实验的输入完整性

最后这一步是我个人强烈建议加的:把整套教材数据当做一个待验收的项目,写一个轻量级“体检脚本”,把每个工作空间里有哪些数据、坐标系是什么、字段数量多少全部扫描出来,输出一张 CSV 清单。之后每次开展新实验前,先跑一遍,对照教材目录核验。

import arcpy, csv, os root = r"D:\gisdata\book" report = r"D:\gisdata\data_health.csv" dst_gdb = r"D:\gisdata\book\book_data.gdb" with open(report, "w", newline="") as f: w = csv.writer(f) w.writerow(["workspace", "dataset", "type", "SR", "extent"]) # 扫描根目录下所有 shp arcpy.env.workspace = root for shp in arcpy.ListFeatureClasses(): desc = arcpy.Describe(shp) w.writerow([root, shp, "shp", desc.spatialReference.name, str(desc.extent)]) # 扫描统一 gdb 内所有要素类 arcpy.env.workspace = dst_gdb for ds in arcpy.ListDatasets(): for fc in arcpy.ListFeatureClasses("", "", ds): desc = arcpy.Describe(fc) w.writerow([dst_gdb, fc, desc.dataType, desc.spatialReference.name, str(desc.extent)])

这个脚本的核心价值在于:它把“数据有没有问题”这个问题从人工猜测变成了可查记录。打开 CSV 后,你一眼就能看到哪些 shp 的 SR 是 Unknown,哪些要素类 extent 明显超出正常范围;如果某个实验需要 landuse.tif,而对应 gdb 里根本没有该名称,那就说明数据包本身缺文件,得回去找原始压缩包,而不是在 ArcMap 里反复重新添加。

我现在的习惯是,任何一套外部数据进项目前都先跑一遍这种扫描脚本。从这一篇配套数据开始养成这个习惯以后,再遇到其他来源的 shp、代码和数据包,都能在十分钟内判断它是否值得投入时间。做 ArcGIS10 实验也一样,先确认输入数据是健康的,再调参数,才不会被表象问题磨掉耐心。希望这个思路能帮到你,也祝你的每一次图层叠加,都一次对齐。

本文还有配套的精品资源,点击获取

需要专业的网站建设服务?

联系我们获取免费的网站建设咨询和方案报价,让我们帮助您实现业务目标

立即咨询