Tengo una lista de archivos csv "nombre.csv" que quiero utilizar para hacer varios análisis en QGIS. Me gustaría automatizar los siguientes pasos para cada archivo :
- crear nuevo proyecto nombre_principal.qgis;
- importar capa de texto;
- importar la capa de polígonos;
- [... algunos análisis...]
- guardar el proyecto en un nuevo directorio
Sé que es posible hacer análisis por lotes con el plugin de Atlas, por ejemplo, para exportar varios mapas. También he mirado el plugin de procesamiento, pero parece que sólo funciona dentro de un proyecto. Pero en este caso los diferentes archivos corresponden a diferentes proyectos, no a mapas.
Cada conjunto de datos corresponde a un sitio dentro de una región. Me gustaría poder visualizar cada mapa, si es posible. De ahí varios proyectos. Pero para ser más preciso, necesito calcular la pendiente media a partir de los polígonos (por tanto, interpolación raster, análisis del terreno y estadísticas zonales). También necesito reproyectar todos los mapas (coordenadas x,y,z en metros) con coordenadas GPS que tengo para 4 puntos cada vez.
¿Quizás deba reproyectar primero a partir de los puntos gps y luego fusionar todos los sitios en un mapa para hacer análisis por lotes?
He conseguido que los primeros pasos funcionen pero tengo un problema para importar los shapefiles: Tengo que crear primero shapefiles a partir de archivos de texto, y luego volver a importar el shapefile.
Esto es lo que tengo:
for cname in glob.glob('*.txt'):
uri2 = "file:///" + csv_path + cname + "?delimiter=%s&wktField=%s" % (";", "wkt")
name = cname.replace('.txt', '')
cont = QgsVectorLayer(uri2, name, "delimitedtext")
shlayer = QgsVectorFileWriter.writeAsVectorFormat(cont,csv_path + name +'.shp',"utf-8",None,"ESRI Shapefile")
# Add to QGIS canvas
iface.addVectorLayer(shlayer, name, "ogr")
El shlayer no está creado y, obviamente, me da un error cuando intento importarlo. ¿Hay algún problema con la forma de importar la capa WKT?