ArcMap接入天地图WMTS服务:从Key配置到出图优化的完整指南 📅 发布时间:2026/9/20 6:53:39 👁 浏览次数: 1. 为什么要在ArcMap里接天地图而不是继续用离线底图做GIS这行的底图这件事几乎绕不开。我见过太多人电脑里存着一堆从各种渠道搞来的影像切片几个T的硬盘塞得满满当当结果每次出图前还要花半小时找哪份是最新的、哪份坐标系对得上。更麻烦的是项目换一个区域底图就得重新找一遍。这种工作方式在十年前还能忍现在真的没必要了。天地图作为国内权威的地理信息公共服务平台提供了地形图、矢量底图、影像底图、全球境界四大类在线服务全部基于WMTSWeb Map Tile Service标准发布。这意味着只要你的ArcMap能发WMTS请求就能直接把这些底图当图层用不用下载、不用拼接、不用管更新。你打开的就是最新的官方维护的坐标系标准统一的。但问题来了——ArcMap原生对WMTS的支持并不像ArcGIS Pro那么直观。Pro里直接有个添加数据→WMTS服务的入口填个URL就完事。ArcMap呢你得绕一下通过GIS服务器→添加WMTS服务器的路径来操作。这个差异让很多从Pro转回ArcMap的人第一次操作时直接懵掉。这篇文章要解决的就是这件事在ArcMap 10.x系列包括10.2、10.8这些常见版本中把天地图的四类服务稳定地加进来并且解决坐标系、Key验证、图层顺序这些实际出图时会遇到的坑。适合已经有ArcMap基础操作能力、但没折腾过在线地图服务的同行也适合那些被返回code: 301001 / 非法key折磨过的朋友。我自己的使用场景是国土空间规划和用地报批出图频率高底图切换频繁。下面这套方法是我在多个项目里反复验证过的不是网上那种抄来抄去的步骤每一步都带上了我踩过的坑和对应的解法。2. 动手之前必须搞清楚的三个前置条件2.1 天地图Key的申请与非法key的真实原因很多人卡在第一步Key。天地图的服务不是完全匿名开放的你需要一个Key才能调用。申请入口在天地图官网的控制台里注册账号后创建一个应用选择浏览器端类型就能拿到一串字符。但这里有个高频坑你拿到的Key在浏览器里测试正常放到ArcMap里就报301001非法key。我一开始也以为是Key的问题反复重新申请了好几个结果都一样。后来才搞明白301001这个错误码在天地图的体系里绝大多数情况不是Key本身无效而是请求的Referer头或者IP白名单不匹配。天地图的Key可以绑定域名白名单或IP白名单。浏览器端调用时Referer是网页地址容易匹配。但ArcMap发WMTS请求时Referer是空的或者是一个本地路径如果你的Key绑定了域名白名单自然就被拒了。提示申请Key时如果只是自己本机ArcMap用建议选择服务端类型或者不绑定白名单如果选项允许这样ArcMap的请求不会被Referer拦截。如果必须绑定把本机公网IP加进去。还有一个细节天地图的Key有配额限制。免费Key每天的调用次数是有限的个人出图完全够用但如果你拿去做批量切片或者高频刷新可能会被限流。我一般会在Key的管理页面看一眼当日剩余量心里有数。2.2 ArcMap版本对WMTS的支持差异不是所有ArcMap版本对WMTS的支持都一样。我实测下来ArcMap版本WMTS支持情况备注10.2基本可用界面较老部分参数需要手动填10.4稳定推荐的最低版本10.6稳定对坐标系识别更准10.8稳定目前最推荐的版本10.2虽然能用但它在解析WMTS的Capabilities文档时偶尔会漏掉某些图层尤其是全球境界这种带注记的图层。如果你还在用10.2建议至少升到10.4。我自己主力是10.8下面演示也以10.8为准10.2的差异我会单独标出来。另外ArcMap是32位程序内存上限就那么大。加载在线影像底图时如果缩放级别拉得太大切片请求量会暴增ArcMap容易卡死。这不是天地图的问题是ArcMap本身的限制。解决办法后面会讲。2.3 网络环境与坐标系的基本认知天地图的服务地址是公开的但你的网络得能正常访问。这个不用多说能打开天地图官网就行。坐标系这块要提前说清楚因为后面加图层时会遇到。天地图提供的WMTS服务默认的切片矩阵集是基于经纬度投影的EPSG:4326也就是我们常说的地理坐标系。而很多做规划的人习惯用Web墨卡托EPSG:3857或者高斯克吕格投影如CGCS2000 3度带。ArcMap加载WMTS时如果当前数据框的坐标系和服务的切片矩阵集不一致ArcMap会尝试动态投影。动态投影在矢量上没问题但在栅格切片上会导致重采样模糊。所以我的建议是加载天地图底图时把数据框坐标系设成WGS84地理坐标系出图前再根据需要投影。这样底图最清晰。3. 一步步把天地图四类服务接进ArcMap3.1 找到正确的WMTS服务地址天地图的WMTS服务地址是有规律的四类服务对应四个不同的URL。这些地址在天地图官网的服务→地图API页面里能查到但藏得比较深。我直接列出来省得你去找矢量底图http://t{0-7}.tianditu.gov.cn/vec_c/wmts?tk你的KEY影像底图http://t{0-7}.tianditu.gov.cn/img_c/wmts?tk你的KEY地形底图http://t{0-7}.tianditu.gov.cn/ter_c/wmts?tk你的KEY全球境界http://t{0-7}.tianditu.gov.cn/cva_c/wmts?tk你的KEY注意{0-7}是负载均衡的服务器编号你可以随便选一个比如t0。tk后面跟你的Key。还有一个注记图层很多人会忽略。矢量和影像底图本身不带地名标注你需要额外加载注记服务矢量注记http://t{0-7}.tianditu.gov.cn/cva_c/wmts?tk你的KEY影像注记http://t{0-7}.tianditu.gov.cn/cia_c/wmts?tk你的KEY等等这里有个容易混淆的地方cva_c既是全球境界又是矢量注记不是的。天地图的命名规则里vec 矢量底图img 影像底图ter 地形底图cva 中文矢量注记cia 中文影像注记eva 英文矢量注记eia 英文影像注记而全球境界实际上是cva的一部分它包含了国界、省界这些境界线。所以你在ArcMap里加载cva_c得到的就是带境界和注记的图层。注意网上有些教程把全球境界单独列一个地址其实用的还是cva_c。别被绕晕了。3.2 在ArcMap中添加WMTS服务器的完整操作打开ArcMap别急着点添加数据。正确的路径是打开ArcCatalog窗口或者ArcMap右侧的Catalog面板。展开GIS Servers节点。双击Add WMTS Server。在弹出的对话框里URL栏粘贴你的WMTS地址比如http://t0.tianditu.gov.cn/vec_c/wmts?tk你的KEY。点Get Layers如果Key和网络都没问题会列出该服务下的所有图层。选中你要的图层比如vec点OK。这时候ArcCatalog里会出现一个WMTS连接。把它拖到ArcMap的地图框里底图就加载进来了。10.2版本的用户注意10.2的Add WMTS Server对话框可能没有Get Layers按钮你需要手动填图层名。矢量底图的图层名是vec影像是img地形是ter注记是cva。填完直接OK也能加载。我第一次操作时犯了个错把URL里的?tk后面的Key复制时多带了一个空格结果一直报错。这种低级错误排查起来很费时间建议粘贴后检查一遍。3.3 图层顺序与注记叠加的正确姿势底图加载进来后你会发现矢量底图没有地名影像底图也没有。这时候需要把注记图层叠上去。正确的图层顺序从下到上影像底图或矢量底图最底层注记图层中间层你的业务数据最上层在ArcMap的内容列表里直接拖动调整顺序就行。但有个细节注记图层的背景必须是透明的。天地图的注记服务本身返回的是带透明通道的PNG正常情况下叠加后不会遮挡底图。如果你发现注记把底图盖住了检查一下是不是加载了错误的图层或者数据框的背景色设成了白色。我一般会把底图和注记分组命名成天地图底图这样图层多了以后不会乱。分组方法在内容列表里按住Ctrl选中多个图层右键→Group。3.4 坐标系设置与动态投影的取舍前面提过天地图的切片矩阵集是EPSG:4326。加载后右键数据框→属性→坐标系确认当前是WGS84。如果不是手动设成Geographic Coordinate Systems → World → WGS 1984。如果你需要出图用投影坐标系比如CGCS2000 3度带有两种做法做法一数据框保持WGS84出图时在布局视图里正常出ArcMap会自动处理。缺点是底图在投影后的显示会有轻微变形但出图精度影响不大。做法二把数据框设成目标投影让ArcMap动态投影底图。缺点是底图会变模糊因为切片被重采样了。我的选择是做法一。底图清晰度对出图效果影响很大尤其是影像底图。投影变形在出图比例尺下肉眼几乎看不出来。4. 那些让你抓狂的报错与性能问题4.1 301001非法key的排查链路这个错误我遇到过三次每次原因都不一样。下面是我总结的排查顺序第一步确认Key本身有效。把WMTS地址直接粘贴到浏览器地址栏把{0-7}换成t0回车。如果返回一串XML说明Key没问题。如果返回错误信息Key可能过期或被封。第二步检查Key的白名单设置。登录天地图控制台看这个Key绑定了什么。如果是域名白名单ArcMap的请求大概率被拒。改成IP白名单把本机公网IP加进去。或者干脆新建一个不绑白名单的Key专门给ArcMap用。第三步检查URL拼接。?tk前面不能有空格Key后面不能有多余字符。我见过有人把写成amp;的那是HTML转义在ArcMap里不认。第四步检查网络代理。如果你在公司内网可能有代理服务器拦截了请求。这个得找IT确认。提示天地图的Key在控制台里可以设置有效期。默认可能是永久但如果你设了短期过期后就会报301001。我一般设永久省事。4.2 加载慢、卡顿、切片不显示的优化ArcMap加载在线底图卡顿核心原因是切片请求量太大。每次你平移或缩放ArcMap都会向服务器请求新的切片。如果缩放级别跨度大请求量会指数级增长。我的优化经验限制最大缩放级别。天地图的服务一般支持到18级左右。在ArcMap里不要没事就拉到最大级别。出图够用就行一般1:2000到1:50000的图12-15级足够了。关闭地图缓存的自动更新。ArcMap有个地图缓存机制会在本地存一份切片。这本来是好事但如果缓存目录设在机械硬盘上反而拖慢速度。把缓存目录设到SSD上。不要在布局视图里频繁缩放。布局视图的渲染比数据视图慢每次缩放都会重新请求切片。先在数据视图里调好范围再切到布局视图出图。用暂停绘制功能。ArcMap有个Pause Drawing按钮调整图层时先暂停调完再恢复能省很多请求。还有一个偏方如果你只需要某个固定范围的底图可以先用ArcMap的导出地图功能把底图导出成TIFF然后作为离线栅格加载。这样出图时就不依赖网络了。缺点是失去了在线更新的优势适合项目后期定稿阶段。4.3 影像底图与矢量底图的切换策略做规划的人经常需要在影像和矢量之间切换。我的做法是两个都加载用图层可见性控制。具体操作把影像底图和矢量底图都加到地图里放在同一个组里。出图时根据需要在内容列表里勾选或取消勾选。这样不用反复去ArcCatalog里拖图层效率高很多。但要注意两个底图同时可见时ArcMap会同时请求两套切片性能会下降。所以切换时记得把不需要的那个取消勾选而不是让它留在那里。另外影像底图在放大到17级以上时天地图的影像会变得模糊因为分辨率到极限了。这时候可以切到矢量底图矢量底图在高级别下依然清晰因为它是矢量渲染的。5. 出图环节的实用技巧与常见误区5.1 出图时底图不显示或显示不全这个问题在布局视图里特别常见。原因通常是数据框的范围和底图的服务范围不匹配。天地图的服务覆盖全国但如果你数据框的范围跑到了国外底图就空白了。解决办法在数据视图里先把范围缩放到你的研究区确认底图正常显示再切到布局视图。如果布局视图里底图还是不全检查数据框的裁剪选项是不是设成了裁剪到形状改成裁剪到数据框。还有一个原因出图分辨率设得太高。比如你设了600 DPIArcMap会请求更高精度的切片但天地图的服务可能不支持那么高的级别导致空白。一般出图用300 DPI就够了打印A3幅面完全够清晰。5.2 注记压盖业务数据的处理注记图层叠在底图上但你的业务数据比如用地规划图斑如果也在同一区域注记可能会压住图斑的标注。这时候需要调整注记的透明度或者图层顺序。我的做法是把注记图层放在业务数据下面。这样业务数据的标注在最上层注记在中间底图在最下层。但这样注记会被业务数据遮挡如果业务数据是半透明的注记还能透出来。如果业务数据不透明那就只能牺牲注记或者把注记的透明度调到50%左右让它不那么抢眼。ArcMap里调整图层透明度右键图层→属性→显示→透明度。5.3 全球境界图层的特殊用法全球境界这个图层很多人不知道怎么用。其实它主要包含国界、省界、地级市界这些线划。做全国尺度的图时直接叠加在影像底图上能清楚看到行政边界。但要注意全球境界的线划比较粗在小比例尺下好看大比例尺下会显得突兀。我做市级规划时一般不用它用自己整理的行政区划矢量更合适。做省级或全国尺度的示意图时它很方便。另外全球境界图层和注记图层是分开的。如果你只要境界线不要注记可以在加载cva_c后在图层属性里把注记的标注关掉只保留线划。具体操作右键图层→属性→标注→取消标注此图层中的要素。6. 从ArcMap迁移到ArcGIS Pro时的注意事项虽然这篇主要讲ArcMap但我知道很多人正在或准备转到Pro。Pro里加载天地图简单得多直接添加数据→WMTS服务填URL就行。但有几个坑要提前知道第一Pro的WMTS连接是存在工程里的。你换一个工程得重新加。ArcMap是存在ArcCatalog里的全局可用。Pro里如果想复用可以把WMTS连接发布到Portal或者用Python脚本批量加。第二Pro对Key的白名单更敏感。因为Pro的请求头跟ArcMap不一样有些在ArcMap里能用的Key在Pro里会报301001。解决办法一样检查白名单设置。第三Pro的渲染性能比ArcMap好很多。同样加载天地图影像Pro的缩放和平移流畅得多。如果你机器配置还行强烈建议转Pro。ArcMap毕竟是32位程序内存限制摆在那里。我现在的做法是日常出图用Pro但一些老项目还在ArcMap里维护所以两边的天地图配置都保留着。Key用同一个白名单设成IP两边都能用。7. 我这些年用天地图底图的一些个人体会天地图的底图质量这几年提升很明显尤其是影像底图很多地区的分辨率已经能到0.5米级别做1:2000的规划图完全够用。矢量底图的地名注记也比较规范不像某些商业地图那样花哨。但有一个问题始终存在天地图的更新频率不如商业地图。一些新建的道路、小区在天地图上可能还是旧影像。所以做现状分析时我一般会结合最新的卫星影像或者实地调查数据不能完全依赖天地图。另外天地图的Key配额对个人用户来说够用但如果你是团队使用建议申请多个Key轮换避免单Key被限流。我见过一个团队十几个人共用一个Key结果下午高峰期频繁报错后来每人一个Key就没事了。最后说一个细节天地图的WMTS服务地址里t{0-7}这个负载均衡其实可以固定用t0。我试过轮换速度差异不明显。固定一个反而好排查问题因为你知道请求发到了哪台服务器。这套方法我在多个项目里用了好几年从10.2到10.8都验证过。核心就是三点Key的白名单设对、坐标系设成WGS84、图层顺序别搞反。剩下的就是熟练度问题。第一次操作可能会觉得步骤多做两遍就顺了。