WMS是什么软件?搞懂地图服务与GIS数据叠加,附:ArcGIS和QGIS实战配置流程
WMS是什么软件?搞懂地图服务与GIS数据叠加,附:ArcGIS和QGIS实战配置流程,这其实是很多 GIS 初学者第一次接触在线地图服务时最容易问错的问题:WMS 不是一个软件,而是一种用于发布和浏览地图图片的网络地图服务标准。你可以把它理解为“远程地图图层接口”,ArcGIS、QGIS、GeoServer、MapServer 等软件都可以发布或读取 WMS。
本文以实际 GIS 工作流为主,讲清楚 WMS 是什么、它和矢量数据有什么区别、为什么能在 ArcGIS 和 QGIS 中叠加底图,并给出可直接照做的配置步骤。
引言:WMS是什么软件,为什么GIS软件里都能添加它?
很多同学在 QGIS 或 ArcGIS Pro 里看到“添加 WMS/WMTS 服务”时,会以为 WMS 是某个独立软件。准确地说,WMS 是 Web Map Service 的缩写,中文常译为网络地图服务,它是 OGC 制定的一种地图服务标准。
WMS 的核心作用是:客户端向服务器发送地图范围、坐标系、图层名、图片格式等参数,服务器返回一张已经渲染好的地图图片。GIS 软件负责把这张图片放到正确的地理位置上,与本地 shp、GeoPackage、地理数据库、栅格影像等数据进行叠加显示。
一句话理解:WMS 不是软件,而是“在线地图图片服务接口”。ArcGIS 和 QGIS 是客户端,GeoServer、ArcGIS Server 等是常见服务端。

背景:WMS地图服务常见使用场景
在实际项目中,WMS 经常用于“看图”和“叠加参考”,而不是用于编辑原始数据。常见场景包括:
- 在 QGIS 中加载政府公开的土地利用、行政区划、地形图、影像图服务。
- 在 ArcGIS Pro 中叠加自然资源、生态红线、规划底图等在线服务。
- 在 WebGIS 系统中作为背景图层或专题图层展示。
- 把部门内部发布的地图服务给多个客户端统一调用。
- 用在线底图检查本地矢量数据的空间位置是否正确。
需要注意的是,WMS 返回的是地图图片,不是原始矢量要素。因此你通常不能直接选择单个地块、编辑几何形状,也不能像 shp 一样随意修改字段。部分 WMS 支持属性查询,但这取决于服务端是否开放 GetFeatureInfo 能力。
原理:WMS服务是如何把地图叠加到正确位置的?
理解 WMS,关键要抓住三个概念:服务地址、图层名称、坐标系与范围。
1. WMS URL 是服务入口
一个 WMS 服务通常以 URL 形式提供。例如服务地址可能长这样:
https://example.com/geoserver/workspace/wms
GIS 软件会根据这个地址请求服务能力文档,也就是 GetCapabilities。这个文档会告诉客户端:服务里有哪些图层、支持哪些坐标系、可以输出哪些图片格式、是否支持透明背景、是否支持属性查询。
2. WMS返回的是渲染后的图片
当你在地图窗口中移动、缩放时,QGIS 或 ArcGIS 会不断向 WMS 服务器发送请求。请求中通常包含当前地图范围、宽高、坐标系和图层名。服务器根据这些参数渲染地图,然后返回 PNG、JPEG 等图片。
这也是为什么 WMS 在网络较慢或服务端压力较大时会出现加载慢、空白、瓦片不连续等问题。它依赖实时请求和服务端渲染能力。
3. 坐标系决定叠加是否准确
WMS地图服务能否和本地 GIS 数据准确叠加,核心取决于坐标系和投影转换。如果本地数据是 CGCS2000、高斯投影,而 WMS 只支持 EPSG:4326 或 EPSG:3857,就需要 GIS 软件进行动态投影。
动态投影可以解决大多数显示问题,但如果本地数据本身缺少正确坐标系定义,或者把投影坐标误定义为经纬度坐标,就会出现图层偏移、飞到国外、比例尺异常等问题。
步骤:QGIS添加WMS服务配置流程
下面以 QGIS 为例,演示如何添加 WMS地图服务并与本地数据叠加。不同版本界面文字可能略有差异,但流程基本一致。
1. 准备WMS服务地址
你需要先拿到可访问的 WMS URL。常见来源包括:
- 自然资源、气象、水利、生态环境等部门公开服务。
- 单位内部 GeoServer 或 ArcGIS Server 发布的服务。
- 项目文档中提供的 WMS GetCapabilities 地址。
如果地址中已经带有参数,例如:
https://example.com/geoserver/workspace/wms?service=WMS&request=GetCapabilities
在 QGIS 中通常可以直接填写完整地址,也可以只填写问号前的基础服务地址。若连接失败,建议先在浏览器中打开 GetCapabilities 地址,确认是否能返回 XML 内容。
2. 在QGIS中创建WMS连接
- 打开 QGIS。
- 点击菜单中的图层。
- 选择数据源管理器。
- 切换到WMS/WMTS。
- 点击新建。
- 填写连接名称,例如“规划底图WMS”。
- 在 URL 中粘贴 WMS 服务地址。
- 如服务需要账号密码,在认证或基本信息中填写凭据。
- 点击确定保存连接。
3. 连接服务并选择图层
- 在 WMS/WMTS 面板中选择刚创建的连接。
- 点击连接。
- 等待 QGIS 读取图层列表。
- 选择需要加载的图层。
- 选择合适的坐标参考系统,优先选择与项目或服务推荐一致的坐标系。
- 点击添加。
如果图层支持透明背景,叠加专题图时建议选择 PNG 格式。JPEG 文件通常更小,但不支持透明背景,适合影像底图。
4. 与本地GIS数据叠加检查
加载 WMS 后,可以再添加本地 shp、GeoPackage 或 PostGIS 图层。重点检查以下内容:
- 本地图层是否定义了正确坐标系。
- QGIS 项目坐标系是否与主要工作数据一致。
- WMS 图层是否显示在正确区域。
- 道路、河流、行政边界等线状要素是否与底图吻合。
- 是否存在固定方向和固定距离的偏移。
如果所有本地数据都偏离 WMS,通常优先检查本地数据坐标系。如果只有某一个 WMS 服务偏移,则要确认该服务发布时使用的坐标系、切片方案或数据源是否正确。
步骤:ArcGIS Pro添加WMS服务配置流程
ArcGIS Pro 同样可以读取 WMS地图服务。它适合在项目制图、数据检查、空间分析前的底图参考中使用。
1. 新建或打开ArcGIS Pro工程
- 启动 ArcGIS Pro。
- 打开已有工程,或新建一个 Map 工程。
- 确认地图视图已打开。
- 建议先设置地图坐标系,尤其是工程有统一投影要求时。
2. 添加WMS服务器连接
- 打开目录窗格。
- 展开服务器。
- 选择新建 WMS 服务器或类似选项。
- 在 URL 中输入 WMS 服务地址。
- 如果需要登录认证,填写用户名和密码。
- 点击确定创建连接。
连接创建后,ArcGIS Pro 会把它作为服务器连接保存。你可以展开该连接,查看服务内可用图层。
3. 将WMS图层添加到地图
- 在服务器连接中找到目标 WMS 图层。
- 右键选择添加到当前地图,或拖拽到地图窗口。
- 等待图层加载。
- 在内容列表中调整 WMS 图层顺序。
- 如果是专题图层,建议放在矢量边界或标注图层下方。
ArcGIS Pro 中的 WMS 图层通常用于显示和查询,不能像本地要素类一样直接编辑。如果你需要可编辑数据,应向数据提供方申请 WFS、Feature Service、文件地理数据库或其他矢量数据格式。
4. 检查ArcGIS中的坐标系与显示比例
添加 WMS 后,如果出现空白或范围异常,可以按以下顺序排查:
- 缩放至 WMS 图层范围,确认不是当前视图范围不在服务覆盖区域内。
- 查看地图坐标系是否被自动切换到不合适的坐标系。
- 检查 WMS 服务是否限制比例尺显示。
- 确认网络是否能访问该服务域名和端口。
- 确认服务是否需要 token、账号密码或内网 VPN。
常见坑:WMS加载失败、偏移、无法查询怎么办?
1. WMS连接成功但地图空白
这类问题很常见,不一定是服务坏了。优先检查:
- 当前地图范围是否在服务覆盖范围之外。
- 服务图层是否设置了最小或最大显示比例尺。
- 所选坐标系是否被服务支持。
- 图片格式是否异常,可尝试从 JPEG 改为 PNG。
- 服务是否返回错误图片而不是地图图片。
建议在浏览器中打开 GetCapabilities 地址。如果浏览器都无法访问,GIS 软件中通常也无法正常连接。
2. WMS和本地数据叠加后有偏移
WMS地图服务叠加偏移,通常不是“拉一下图层”就能解决。应按数据逻辑排查:
- 本地数据是否只有坐标值但没有正确坐标系定义。
- 是否把投影坐标系误设置成地理坐标系。
- 是否存在 CGCS2000、西安80、北京54、WGS84 之间的基准转换问题。
- WMS 服务端是否使用了不准确的数据源。
- 客户端是否启用了错误的动态投影或地理变换参数。
如果偏移是几十米到上百米,重点考虑地理基准转换。如果偏移是几百公里甚至飞到国外,通常是坐标系定义错误。
3. WMS图层不能编辑
这是 WMS 的正常限制。WMS 返回的是图片,不是要素几何和字段表。你可以把它作为参考底图,但不能像编辑 shp 那样修改其中的点、线、面。
如果业务需要编辑或分析,应考虑以下数据来源:
- WFS:可返回矢量要素,适合要素级读取。
- ArcGIS Feature Service:适合 ArcGIS 生态中的要素服务。
- PostGIS:适合数据库级空间数据管理。
- GeoPackage:适合离线矢量数据交换。
- File Geodatabase:适合 ArcGIS 工程化数据管理。
4. WMS加载很慢
WMS 需要服务端按请求范围实时渲染图片。加载慢可能来自服务器渲染慢、网络慢、图层样式复杂、请求范围过大等原因。
- 尽量只勾选必要图层,不要一次加载所有图层。
- 减少透明叠加和复杂符号化图层。
- 优先使用 WMTS 或缓存地图服务作为底图。
- 在高比例尺下查看局部区域,避免一次请求大范围复杂地图。
- 如果是自建服务,检查空间索引、数据库查询和样式规则。
方法比较:WMS、WMTS、WFS、XYZ瓦片该怎么选?
| 服务类型 | 返回内容 | 适合场景 | 主要限制 |
|---|---|---|---|
| WMS | 动态渲染地图图片 | 专题图展示、在线叠加、制图参考 | 通常不能编辑,性能依赖服务端渲染 |
| WMTS | 预切片地图图片 | 底图浏览、大范围快速缩放 | 样式和比例尺较固定 |
| WFS | 矢量要素和属性 | 要素查询、下载、空间分析 | 大数据量时性能压力较大 |
| XYZ瓦片 | 按 z/x/y 组织的地图瓦片 | WebGIS底图、互联网地图叠加 | 标准能力描述较弱,通常用于显示 |
| ArcGIS Feature Service | 要素、属性、服务能力 | ArcGIS平台数据共享与编辑 | 依赖 ArcGIS 服务体系和权限配置 |
如果你的目标是“在 GIS 软件中快速叠加一张在线专题图”,WMS 很合适。如果你的目标是“高性能浏览底图”,优先考虑 WMTS 或 XYZ 瓦片。如果你的目标是“下载矢量数据并做空间分析”,WFS 或 Feature Service 更合适。
检查清单:添加WMS服务前后要确认什么?
为了避免 WMS地图服务配置后反复报错,可以按下面清单逐项检查。
服务连接检查
- WMS URL 是否完整、可访问。
- 浏览器是否能打开 GetCapabilities 文档。
- 服务是否需要账号、密码、token 或 VPN。
- 是否存在内外网访问限制。
- 服务是否仍在有效期内。
图层显示检查
- 是否选择了正确图层,而不是空图层或分组节点。
- 是否在服务覆盖范围内查看地图。
- 是否触发比例尺显示限制。
- 是否选择了合适图片格式,例如 PNG 或 JPEG。
- 图层顺序是否被其他不透明图层遮挡。
坐标系叠加检查
- 本地数据是否有正确坐标系定义。
- 项目坐标系是否符合工作要求。
- WMS 是否支持当前项目坐标系。
- 是否需要设置地理变换参数。
- 偏移量是固定小偏移,还是大范围错位。
业务使用检查
- WMS 是否仅用于显示参考。
- 是否需要查询属性,服务是否支持 GetFeatureInfo。
- 是否需要编辑,如果需要则不应只依赖 WMS。
- 是否需要离线使用,WMS 通常依赖网络。
- 是否需要在成果图中注明数据来源和服务版权。
FAQ:关于WMS是什么软件的常见问题
WMS是什么软件?
WMS 不是软件,而是一种网络地图服务标准。QGIS、ArcGIS Pro、GeoServer、MapServer、ArcGIS Server 等软件可以读取或发布 WMS。你在 GIS 软件中添加 WMS,本质上是在连接一个在线地图服务。
WMS和普通shp数据有什么区别?
shp 是本地矢量数据格式,包含几何和属性,通常可以编辑和分析。WMS 返回的是渲染后的地图图片,主要用于显示和叠加参考,通常不能直接编辑其中的要素。
QGIS可以添加ArcGIS Server发布的WMS吗?
可以,只要该服务启用了 WMS 能力,并且网络和权限允许访问,QGIS 就可以通过 WMS/WMTS 数据源管理器连接。需要注意的是,有些 ArcGIS 服务只开放 MapServer 或 FeatureServer,并不一定启用 WMS。
ArcGIS Pro可以加载GeoServer发布的WMS吗?
可以。GeoServer 发布的标准 WMS 服务通常可以在 ArcGIS Pro 中作为 WMS 服务器连接添加。如果连接失败,优先检查服务地址、版本兼容、坐标系支持、认证方式和网络限制。
WMS地图服务为什么不能下载原始数据?
因为 WMS 的设计目标是返回地图图片,而不是分发原始要素数据。如果你需要下载矢量数据,应查看服务方是否提供 WFS、Feature Service、GeoPackage、shp 或数据库访问方式。
WMS叠加本地数据不准,是不是WMS服务有问题?
不一定。更常见的原因是本地数据坐标系定义错误、投影转换参数不正确,或项目坐标系与服务支持坐标系不匹配。建议先用可靠底图和已知控制点检查本地数据,再判断 WMS 服务端是否存在问题。
WMS和WMTS哪个更适合做底图?
如果只是作为快速浏览底图,WMTS 通常更适合,因为它使用预切片,加载速度更稳定。WMS 更适合动态专题图、需要服务端实时渲染样式的场景。
WMS可以在WebGIS中使用吗?
可以。OpenLayers、Leaflet 等 WebGIS 前端库都能加载 WMS。需要额外注意跨域访问、服务性能、坐标系、透明背景、图层顺序和版权标注。
结论:把WMS当作地图服务接口,而不是软件
回到标题中的问题:WMS是什么软件?答案是,WMS 不是软件,而是 GIS 领域常用的网络地图服务标准。它让 QGIS、ArcGIS Pro、WebGIS 客户端能够通过 URL 加载在线地图图片,并与本地 GIS 数据进行叠加显示。
实际使用时,你只需要抓住四点:服务地址是否可访问、图层是否选对、坐标系是否匹配、业务上是否只是用于显示参考。若要编辑、下载或空间分析,不要把 WMS 当作原始数据源,而应寻找 WFS、Feature Service、PostGIS 或离线数据包。
对于 GIS 学习和项目实施来说,WMS 是非常实用的在线地图叠加工具。只要理解它“返回图片、不等于原始数据”的本质,再按本文的 ArcGIS 和 QGIS 配置流程操作,大多数 WMS 加载、叠加和显示问题都可以快速定位。