qgis服务端搭建高可用教程
QGIS是一款开源的GIS地理化工具,QGIS可以通过内嵌的Python空间进行脚本编写和二次开发。本期为PyQGIS系列内容的第二期,请大家点击关注期待后续的内容。
PyQGIS系列笔记:
PyQGIS入门「1、瓦片地图加载」
本期目标:将csv文件中的经纬度数据加载到QGIS图层中。
本文使用的QGIS版本为 QGIS 3.16.7。
1、添加定界文本数据图层
添加方式:图层→添加图层→添加定届文本数据图层
3、效果演示
1、使用的函数
vlayer = QgsVectorLayer(layer_url, layer_name, type) #生成图层
layer_url:图层地址(对应图层的源)
layer_name:图层名称
type:此处填写delimitedtext,即定界文本数据
QgsProject.instance().addMapLayer(vlayer) #添加图层
2、源url分析
file:///C:/Users/admin/Desktop/qgis图层/qgis课件/基础数据.csv?type=csvmaxFields=10000detectTypes=yesxField=经度yField=纬度crs=EPSG:4326spatialIndex=nosubsetIndex=nowatchFile=no
将源url解码后:
file:///C:/Users/admin/Desktop/qgis图层/qgis课件/基础数据.csv?type=
csvmaxFields=10000detectTypes=yesxField=经度yField=纬度crs=EPSG:4326spatialIndex=nosubsetIndex=nowatchFile=no
注意几个细节:
①建议使用英文路径,若使用中文路径会增加更多的转码工作。
②本地路径必须以 file:/// 为前缀。
3、实战演示
1)layer_url 构造
from urllib.parse import quotepath = D:/qgistool/ quote(基础数据.csv)url = file:///{path}?type=csvxField={x}yField={y}crs=EPSG:4326.format(path=path,x=quote(经度),y=quote(纬度))
2)图层创建
data_layer = QgsVectorLayer(url, 基础数据图层, delimitedtext) QgsProject.instance().addMapLayer(data_layer)
3)效果演示