qgis服务端搭建高可用教程(PyQGIS入门2加载csv文件)
“ 引言 ”
QGIS是一款开源的GIS地理化工具,QGIS可以通过内嵌的Python空间进行脚本编写和二次开发。本期为PyQGIS系列内容的第二期,请大家点击关注期待后续的内容。
PyQGIS系列笔记:
PyQGIS入门「1、瓦片地图加载」
本期目标:将csv文件中的经纬度数据加载到QGIS图层中。
本文使用的QGIS版本为 QGIS 3.16.7。
一、手动加载经纬度数据
1、添加定界文本数据图层
添加方式:图层→添加图层→添加定届文本数据图层
2、选择csv文件、横坐标、纵坐标等信息
注:csv文件建议使用utf-8编码格式。
3、效果演示
注:图层右键点击缩放到图层范围即可快速定位。
二、Python加载经纬度数据
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=csv&maxFields=10000&detectTypes=yes&xField=经度&yField=纬度&crs=EPSG:4326&spatialIndex=no&subsetIndex=no&watchFile=no
将源url解码后:
file:///C:/Users/admin/Desktop/qgis图层/qgis课件/基础数据.csv?type=
csv&maxFields=10000&detectTypes=yes&xField=经度&yField=纬度&crs=EPSG:4326&spatialIndex=no&subsetIndex=no&watchFile=no
注意几个细节:
①建议使用英文路径,若使用中文路径会增加更多的转码工作。
②本地路径必须以 file:/// 为前缀。
3、实战演示
1)layer_url 构造
from urllib.parse import quote
path = 'D:/qgistool/' quote('基础数据.csv')
url = "file:///{path}?type=csv&xField={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)效果演示
如果你觉得文章还不错,请 点赞、分享、关注、转发 ,PyQGIS 将是一期系列内容,下期内容很快更新。
,免责声明:本文仅代表文章作者的个人观点,与本站无关。其原创性、真实性以及文中陈述文字和内容未经本站证实,对本文以及其中全部或者部分内容文字的真实性、完整性和原创性本站不作任何保证或承诺,请读者仅作参考,并自行核实相关内容。文章投诉邮箱:anhduc.ph@yahoo.com