在ArcGIS中加载地图很麻烦,一来是国内的数据源太少,二是地图显示速度太慢。

不过在QGIS中加载地图,然后把shp文件加载,效果好很多。后来在 https://zhuanlan.zhihu.com/p/353888644

这篇文章里写的很全,而且目前来说内容都有效。

我这里只贴几个我在用的地址。

1. 高德矢量图

https://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z}

qgis打开python qgis打开地图_天地图

2. 高德影像图

https://webst01.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z}

qgis打开python qgis打开地图_qgis打开python_02

3. 高德路网图

https://wprd01.is.autonavi.com/appmaptile?x={x}&y={y}&z={z}&lang=zh_cn&size=1&scl=2&style=8&ltype=11%0A%0A

qgis打开python qgis打开地图_高德图_03

 4. 天地图影像图

https://t3.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=天地图注册浏览器端tk

qgis打开python qgis打开地图_天地图_04

 5. 天地图影像图标注,里面包含了路网和标注。

https://t2.tianditu.gov.cn/cia_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cia&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=天地图注册浏览器端tk

qgis打开python qgis打开地图_加载_05

 6. 天地图矢量地图

https://t6.tianditu.gov.cn/vec_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=天地图注册浏览器端tk

qgis打开python qgis打开地图_QGIS\_06

7. 天地图矢量标注

 https://t2.tianditu.gov.cn/cva_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cva&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=天地图注册浏览器端tk

qgis打开python qgis打开地图_天地图_07

以下内容来自:https://zhuanlan.zhihu.com/p/353888644, 在此转载做个备份。 

QGIS有加载WMS、WMTS、WFS,以及XYZ形式的瓦片等地图服务的能力,通常可以作为空间数据的底图一起可视化出来。

本文列举一些例子记录QGIS如何使用地图服务,具体包括:

  • XYZ
  • XYZ的链接获取
  • WMTS服务,以Mapbox为例
  • 天地图(XYZ和WFS)

URL列表:

XYZ参考: http://openwhatevermap.xyz/ 高德参考: 高德矢量图:https://webrd02.is.autonavi.com/appmaptile?lang=zh_cn&size=1&scale=1&style=8&x={x}&y={y}&z={z} 高德遥感图:http://webst02.is.autonavi.com/appmaptile?style=6&x={x}&y={y}&z={z} OSM标准底图:https://tile.openstreetmap.org/{z}/{x}/{y}.png Staman水彩图:http://a.tile.stamen.com/watercolor/{z}/{x}/{y}.jpg Mapbox底图:https://api.mapbox.com/styles/v1/mapbox/streets-v10/tiles/256/{z}/{x}/{y}?access_token=<mapbox key> 天地图矢量图:https://t6.tianditu.gov.cn/vec_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=<tianditu key> 天地图矢量注记:https://t2.tianditu.gov.cn/cva_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cva&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=<tianditu key> 天地图遥感图:https://t3.tianditu.gov.cn/img_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=img&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=<tianditu key> 天地图遥感注记:https://t2.tianditu.gov.cn/cia_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=cia&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=<tianditu key> WMTS: Mapbox:https://api.mapbox.com/styles/v1/mapbox/streets-v11/wmts?access_token=<mapbox key> WFS: 天地图:http://gisserver.tianditu.gov.cn/TDTService/wfs 注:Mapbox现在都用矢量瓦片了,还不知道怎么加

XYZ

地图底图发布服务通常是以瓦片的形式,一种提供调用的方式是按照“行、列、级别”三个参数确定一个瓦片图片,通常是X-列;Y-行;Z-级别。在QGIS中,用这样一个URL表示。如OSM地图的链接如下:

https://tile.openstreetmap.org/{z}/{x}/{y}.png

 

qgis打开python qgis打开地图_加载_08

其效果为:

qgis打开python qgis打开地图_qgis打开python_09

XYZ链接的获取

一般如果网络地图是以XYZ的URL形式请求得到的话,获取一个请求示例即可还原出我们要的URL

  • 首先推荐一个网站,集合了一些底图的xyz链接。http://openwhatevermap.xyz/
  • 注意:
  • 链接中的{s}可能需要手动补一下
  • 部分链接可能由于网络原因加载的很慢或加不出来

qgis打开python qgis打开地图_qgis打开python_10

下图的URL为:http://a.tile.stamen.com/watercolor/{z}/{x}/{y}.jpg

qgis打开python qgis打开地图_高德图_11

  • 更可靠的方式是从浏览器开发者模式(F12-Network)中查看地图瓦片的真实请求地址并替换XYZ。
  • 如打开OSM地图:https://www.openstreetmap.org/
  • 拖动地图使其发起瓦片请求,得到瓦片链接:https://tile.openstreetmap.org/4/14/8.png
  • 用XYZ替换相应位置得到我们要的URL:https://tile.openstreetmap.org/{z}/{x}/{y}.png

qgis打开python qgis打开地图_高德图_12


qgis打开python qgis打开地图_QGIS\_13

WMTS服务,以Mapbox为例

Add Mapbox maps as layers in ArcGIS and QGIS with WMTS

  • 如该链接所述,可以用WMTS服务调用Mapbox底图,新建WMTS服务并配置URL为https://api.mapbox.com/styles/v1/mapbox/streets-v11/wmts?access_token=,其中需要自己到官网申请
  • 一个WMTS服务是可以包括多个图层的

qgis打开python qgis打开地图_qgis打开python_14

天地图(XYZ和WFS)

常用的底图包括OSM、Mapbox、GoogleMap、高德等,天地图是国家队做的一款电子地图,数据准确性上可能会更好一些,区别于百度、高德的加密坐标,天地图是WGS84的。

  • 首先,获取XYZ,按照上文的方法可以得到天地图的demo链接,我们按照X-列;Y-行;Z-级别的方式得到天地图的XYZ链接

https://t6.tianditu.gov.cn/vec_w/wmts?SERVICE=WMTS&REQUEST=GetTile&VERSION=1.0.0&LAYER=vec&STYLE=default&TILEMATRIXSET=w&FORMAT=tiles&TILECOL={x}&TILEROW={y}&TILEMATRIX={z}&tk=

  • 天地图现在也需要申请开发者key才能使用,注意选择js端(如果选择服务端会报错)

qgis打开python qgis打开地图_加载_15

  • 天地图的其他数据资源:http://lbs.tianditu.gov.cn/data/dataapi.html

包括交通、水系、居民地数据,但是都是综合过的所以粒度会比较粗,且数据可能比较旧。这里作为WFS的例子展示,这些数据以WFS服务形式提供矢量数据,如水系:

qgis打开python qgis打开地图_qgis打开python_16

qgis打开python qgis打开地图_天地图_17

插件

  • 这里推荐一个QGIS的插件可以加载网络地图,并提供了搜索

qgis打开python qgis打开地图_QGIS\_18