How to add multiple Vector Layers and group them in QGIS with PyQGIS - Tutorial
/QGIS is a great software for the processing/analysis of spatial data, Python is a clear, powerful programming lenguaje; together they can enhance the spatial analysis to solve more complex or more dedicated problems in less time. PyQGIS is the Python environment inside QGIS with a set of QGIS libraries plus the Python tools with the potential of running other powerful libraries as Pandas, Numpy or Scikit-learn.
This tutorial shows the whole procedure to upload multiple files from a certain pattern and group them on the Layer Panel using PyQGIS commands.
Tutorial
Code
This is the final PyQGIS code for the tutorial:
import os
route = "C:\Users\Saul\Documents\Ih_HurricaneTrackingQGIS\Shps"
root = QgsProject.instance().layerTreeRoot()
shapeGroup = root.addGroup("shapePointGroup")
os.chdir(route)
wholelist = os.listdir(os.getcwd())
for file in wholelist:
if "pts.shp" in file:
if "xml" not in file:
#print(file)
fileroute=route+'\\'+file
print(fileroute)
filename = QgsVectorLayer(fileroute,file[:-4],"ogr")
QgsMapLayerRegistry.instance().addMapLayer(filename,False)
shapeGroup.insertChildNode(1,QgsLayerTreeLayer(filename))Input Files
You can download the files for this tutorial here.
