XYZ瓦片链接怎么找?不同底图怎么加载?
很多同学在做 WebGIS、QGIS 或 ArcGIS Pro 在线底图配置时,都会遇到一个很具体的问题:XYZ瓦片链接怎么找?不同底图怎么加载? 本文围绕这个问题,讲清楚 XYZ 瓦片链接的结构、常见底图来源、在 QGIS 和 WebGIS 中的加载方法,以及为什么有些链接能打开、有些链接却加载失败。

引言:为什么 GIS 项目经常需要找 XYZ 瓦片链接
在 GIS 学习和项目开发中,在线底图几乎是最常见的基础数据之一。无论你是在 QGIS 中叠加矢量数据,还是在 Leaflet、OpenLayers 里开发 WebGIS 页面,都可能需要配置 XYZ 瓦片链接。
XYZ 瓦片链接通常不是一个普通网页地址,而是一个带有占位符的 URL 模板,例如:
https://example.com/tiles/{z}/{x}/{y}.png
其中 {z} 表示缩放级别,{x} 和 {y} 表示瓦片行列号。地图软件会根据当前视图范围自动替换这些参数,请求对应的小图片,再把它们拼接成完整底图。
背景:XYZ瓦片链接怎么找才靠谱
要找到可用的 XYZ 瓦片链接,建议优先从官方文档、公开服务说明、开发者平台或自己部署的瓦片服务中获取。不要只复制网上零散的链接,因为很多链接可能存在权限、Key、跨域、服务变更或使用条款问题。
常见的 XYZ 瓦片链接来源
- 官方地图开发平台:例如高德、天地图、Mapbox、ArcGIS Online 等,一般需要申请 Key 或 Token。
- 开源底图服务:例如 OpenStreetMap 相关瓦片服务,但要注意访问频率和使用政策。
- 自建瓦片服务:例如使用 GeoServer、MapProxy、TileServer GL、MBTiles 服务发布自己的瓦片。
- 浏览器开发者工具:可以用于学习和排查瓦片请求结构,但不等于可以随意商用或大流量调用。
用浏览器开发者工具识别瓦片请求
- 打开一个在线地图页面。
- 按 F12 打开浏览器开发者工具。
- 进入 Network 面板。
- 拖动或缩放地图,让页面发起新的瓦片请求。
- 在请求列表中筛选
png、jpg、webp、tile、x、y、z等关键词。 - 观察 URL 中是否存在缩放级别、行列号、图层类型、Key 或 Token 参数。
如果你看到类似下面的结构,就很可能是瓦片请求:
https://server.example.com/tile?x=13452&y=6201&z=14
或:
https://server.example.com/14/13452/6201.png
把具体数字替换为 {z}、{x}、{y} 后,通常就可以得到 XYZ 瓦片链接模板。
原理:XYZ 瓦片链接为什么要有 x、y、z
XYZ 瓦片是一种把全球地图按缩放级别切成小图片的组织方式。缩放级别越大,瓦片越细,地图看起来越详细。
- z:缩放级别。一般从 0 开始,数字越大,地图越详细。
- x:瓦片列号,从左到右递增。
- y:瓦片行号,从上到下递增。
大多数 Web 地图底图采用 Web Mercator 投影,也就是 EPSG:3857。QGIS、Leaflet、OpenLayers 加载常见在线底图时,通常都会按 EPSG:3857 的瓦片规则进行显示。
如果你的业务数据是 CGCS2000、WGS84 经纬度或地方坐标系,加载 XYZ 底图后需要检查坐标系是否正确,否则容易出现图层偏移。
XYZ 和 TMS 的 y 方向差异
很多加载失败或位置上下颠倒的问题,来自 XYZ 和 TMS 的行号规则差异。XYZ 的 y 通常从上往下增加,而 TMS 的 y 通常从下往上增加。
| 类型 | 行列规则 | 常见场景 |
|---|---|---|
| XYZ | x 从左到右,y 从上到下 | Leaflet、OpenLayers、QGIS XYZ Tiles |
| TMS | x 从左到右,y 从下到上 | 部分老服务、自建瓦片服务、部分 GIS 服务配置 |
如果同一个瓦片链接在某些软件里显示错位或上下翻转,要优先检查它到底是 XYZ 还是 TMS。
步骤:不同底图怎么加载
下面按常见使用场景,分别说明不同底图怎么加载。这里不绑定某一个商业底图链接,而是重点讲清楚通用配置方法和检查点。
在 QGIS 中加载 XYZ 瓦片底图
- 打开 QGIS。
- 在左侧 浏览器 面板中找到 XYZ Tiles。
- 右键点击 XYZ Tiles,选择 新建连接。
- 填写名称,例如 OSM底图、影像底图 或 自建瓦片。
- 在 URL 中填写 XYZ 瓦片链接模板。
- 如果服务要求 Key,把 Key 参数一并写入 URL。
- 点击确定后,双击该连接加载到底图中。
示例格式如下:
https://example.com/tiles/{z}/{x}/{y}.png
如果是带参数的服务,可能类似:
https://example.com/tile?x={x}&y={y}&z={z}&key=你的Key
加载后建议先把工程坐标系设置为 EPSG:3857,或者打开 QGIS 的动态投影功能,再叠加自己的矢量数据检查是否对齐。
在 ArcGIS Pro 中加载 XYZ 或 Web Tile Layer
ArcGIS Pro 更常见的方式是添加 Web 图层、WMTS 或 ArcGIS REST 服务。如果你手上是标准 XYZ 瓦片链接,可以根据版本和服务类型尝试通过 Web 图层方式添加。
- 在 ArcGIS Pro 中打开地图工程。
- 进入 Map 相关菜单。
- 选择添加数据或添加 Web 图层。
- 输入在线瓦片服务地址。
- 确认服务类型是否被 ArcGIS Pro 识别。
- 加载后检查坐标系、比例尺范围和瓦片显示层级。
如果 ArcGIS Pro 无法直接识别某个 XYZ 链接,可以考虑使用 WMTS 服务、ArcGIS REST MapServer 服务,或者将瓦片服务通过中间服务转换后再加载。
在 Leaflet 中加载不同底图
Leaflet 加载 XYZ 瓦片非常直接,常用 L.tileLayer。示例代码如下:
var map = L.map('map').setView([31.2304, 121.4737], 12);
L.tileLayer('https://example.com/tiles/{z}/{x}/{y}.png', {
maxZoom: 18,
attribution: '底图来源'
}).addTo(map);
如果底图需要 Token,可以写在 URL 中:
L.tileLayer('https://example.com/tiles/{z}/{x}/{y}.png?token=你的Token', {
maxZoom: 18
}).addTo(map);
加载不同底图时,可以创建多个图层对象,再用图层控制器切换:
var vec = L.tileLayer('https://example.com/vector/{z}/{x}/{y}.png');
var img = L.tileLayer('https://example.com/image/{z}/{x}/{y}.jpg');
var baseMaps = {
'矢量底图': vec,
'影像底图': img
};
vec.addTo(map);
L.control.layers(baseMaps).addTo(map);
在 OpenLayers 中加载 XYZ 瓦片
OpenLayers 中通常使用 ol/source/XYZ。适合需要更复杂图层控制、投影处理和前端工程化的 WebGIS 项目。
const tileLayer = new ol.layer.Tile({
source: new ol.source.XYZ({
url: 'https://example.com/tiles/{z}/{x}/{y}.png',
maxZoom: 18
})
});
const map = new ol.Map({
target: 'map',
layers: [tileLayer],
view: new ol.View({
center: ol.proj.fromLonLat([121.4737, 31.2304]),
zoom: 12
})
});
如果底图显示空白,先打开浏览器 Network 面板,看瓦片请求是否返回 200。如果返回 401、403 或 404,就不是地图代码问题,而是权限、路径或参数问题。
加载矢量底图、影像底图和注记底图
不同底图怎么加载,关键是区分底图类型。常见底图一般包括:
- 矢量底图:适合道路、行政区、地名等通用背景。
- 影像底图:适合遥感解译、地物核查、规划辅助。
- 注记底图:通常叠加在影像底图上,用于显示地名、道路名等文字。
- 地形底图:适合山地、水文、地貌相关分析展示。
在 WebGIS 中,影像底图和注记底图通常需要分别加载,并控制图层顺序:
影像底图:放在最底层
注记底图:放在影像之上
业务图层:放在注记或底图之上,根据制图需要调整
在 QGIS 中也是同样逻辑:影像瓦片放下面,注记瓦片放上面,自己的点线面数据再放在合适位置。
常见坑:XYZ 瓦片链接加载失败的排查方法
链接能在浏览器打开,但 QGIS 加载不了
单张瓦片能打开,不代表 URL 模板一定正确。你需要确认链接里是否已经把具体数字替换成了 {z}、{x}、{y}。
- 错误思路:直接复制某一张瓦片的固定地址。
- 正确思路:找到瓦片 URL 规律,改成可动态请求的模板。
底图一片空白
底图空白时,优先检查以下内容:
- URL 是否完整。
{z}、{x}、{y}是否写错大小写。- 服务是否需要 Key、Token 或 Referer。
- 当前缩放级别是否超出服务范围。
- 网络是否能访问该服务器。
- 服务是否限制跨域访问。
底图和矢量数据偏移
偏移问题通常不是 XYZ 瓦片链接本身的问题,而是坐标系、加密坐标或数据来源不一致造成的。
- 检查业务数据坐标系是否定义正确。
- 检查工程坐标系是否为 EPSG:3857 或能正确动态投影。
- 检查底图是否使用特殊坐标偏移体系。
- 不要把“定义投影”和“投影转换”混为一谈。
缩放到某一级别后瓦片消失
很多瓦片服务只提供有限缩放级别。例如某些服务只到 18 级,超过后就会返回空白或 404。解决方法是在客户端设置最大缩放级别。
maxZoom: 18
在 QGIS 中,也可以检查 XYZ Tiles 连接属性,确认是否设置了合适的缩放范围。
复制网上链接后很快失效
这类问题很常见。原因可能包括服务地址调整、Key 失效、访问来源限制、服务商策略变化或链接本来就不是公开服务。正式项目应使用合规、稳定、可维护的底图服务。
方法比较:XYZ、WMTS、WMS 和矢量瓦片怎么选
| 方式 | 特点 | 适合场景 | 注意事项 |
|---|---|---|---|
| XYZ 瓦片 | 结构简单,加载快,WebGIS 支持好 | 在线底图、影像底图、缓存地图 | 通常是图片瓦片,样式不易动态调整 |
| WMTS | OGC 标准瓦片服务 | 政务 GIS、标准化平台、专业 GIS 软件 | 配置项比 XYZ 多,需要匹配瓦片矩阵 |
| WMS | 按范围动态出图 | 专题图、动态渲染、服务器端制图 | 高并发下性能可能不如瓦片缓存 |
| 矢量瓦片 | 传输矢量数据,前端可渲染样式 | 高性能 WebGIS、多样式地图、交互制图 | 配置和样式体系更复杂 |
如果你只是想快速加载一张在线底图,XYZ 瓦片通常最简单。如果你在做规范化平台或需要对接行业系统,WMTS 更常见。如果你需要动态专题渲染,可以考虑 WMS。如果你要做高性能、可定制样式的 WebGIS 底图,可以研究矢量瓦片。
检查清单:配置 XYZ 瓦片链接前后要确认什么
- 是否确认该瓦片服务允许当前用途使用。
- 是否拿到了官方文档、Key 或 Token。
- URL 模板是否包含
{z}、{x}、{y}。 - 瓦片格式是否正确,例如
png、jpg、webp。 - 是否知道服务的最小和最大缩放级别。
- 是否确认是 XYZ 规则,而不是 TMS 规则。
- 是否检查过浏览器 Network 返回状态码。
- 是否确认业务数据和底图坐标系能正确对齐。
- 是否在正式项目中避免使用不稳定的临时链接。
- 是否为 WebGIS 项目设置了图层顺序和版权署名。
FAQ:XYZ瓦片链接怎么找和不同底图怎么加载的常见问题
Q1:XYZ瓦片链接怎么找最稳妥?
最稳妥的方法是从官方开发文档、开放平台或自己部署的瓦片服务中获取。浏览器开发者工具可以帮助理解瓦片请求结构,但正式项目不建议依赖来源不明的链接。
Q2:为什么我复制的 XYZ 瓦片链接只能打开一张图片?
因为你复制的可能是单张瓦片地址,而不是 URL 模板。需要把具体的缩放级别、列号、行号替换成 {z}、{x}、{y},地图软件才能自动请求不同位置的瓦片。
Q3:不同底图怎么加载到同一个 WebGIS 页面?
可以分别创建多个瓦片图层,例如矢量底图、影像底图、注记底图,再通过图层控制器切换或叠加。影像底图一般放底层,注记底图放影像上方,业务图层再根据显示效果调整顺序。
Q4:QGIS 加载 XYZ 底图后和我的矢量数据对不上怎么办?
先检查矢量数据是否正确定义坐标系,再检查 QGIS 工程坐标系和动态投影设置。很多偏移不是瓦片链接问题,而是数据坐标系定义错误、投影转换错误或底图坐标体系差异造成的。
Q5:XYZ 瓦片和 WMTS 哪个更适合 GIS 项目?
如果是快速加载互联网底图,XYZ 更简单。如果是政务、行业平台或需要标准化对接,WMTS 更规范。两者都可以用于底图加载,选择时主要看服务来源、软件支持和项目规范要求。
Q6:为什么同一个 XYZ 链接在 Leaflet 能用,在其他软件不能用?
可能是软件对 URL 模板、请求头、跨域、Token、瓦片坐标规则或投影支持不同。建议先用浏览器 Network 检查请求状态,再对比软件对 XYZ、TMS、WMTS 的支持方式。
结论:先识别瓦片规则,再选择合适的加载方式
解决 XYZ瓦片链接怎么找?不同底图怎么加载? 这个问题,关键不是简单复制一个链接,而是理解 URL 模板、瓦片行列号、缩放级别、坐标系和服务权限。
实际操作时,可以按这个顺序处理:先确认底图服务来源是否合规,再识别 XYZ 瓦片链接模板,然后在 QGIS、Leaflet、OpenLayers 或 ArcGIS Pro 中加载,最后检查坐标对齐、缩放级别、权限和图层顺序。
对于学习和测试,XYZ 瓦片是最容易上手的在线底图方式;对于正式项目,应优先选择稳定、授权明确、文档完整的底图服务,并保留清晰的配置记录,方便后续维护和排查问题。