Módulo 9 Curso de QGIS La Guía de Procesamiento de QGIS
Módulo 9 Curso de QGIS La Guía de Procesamiento de QGIS
Módulo 9 Curso de QGIS La Guía de Procesamiento de QGIS
MÓDULO 9
Curso de QGIS
La guía de procesamiento de QGIS
José Carlos Martínez Llario
Revisión: 22/07/2020
2
MÓDULO 9. La guía de procesamiento de QGIS
Contenido
12.1 Introducción
Esta guía describe cómo usar el marco de procesamiento de QGIS. Se asume que no se tiene ningún
conocimiento previo del marco de procesamiento o cualquiera de las aplicaciones de los que depende.
Supone un conocimiento básico de QGIS.
La guía se diseñó para el auto estudio o utilizarse para ejecutar un taller de procesamiento.
Los ejemplos en este manual utilizan QGIS 3.8-3.10. Puede ser que no funcionen exactamente igual o
no estén disponibles en versiones distintas.
Esta guía está compuesta de un conjunto de pequeños ejercicios de complejidad progresiva. Si nunca
ha usado el marco de procesamiento, debe comenzar desde el principio. Si tiene alguna experiencia
previa no dude de saltar lecciones. Las lecciones son bastante independientes entre sí y cada una
presenta un concepto nuevo o un nuevo elemento, que se indica en el título del capítulo y la breve
introducción al inicio de cada capítulo. El objetivo es hacer más fácil la localización de las lecciones que
tratan de un tema en particular.
Para una descripción más sistemática de todos los componentes del marco y su uso, se recomienda
revisar el capítulo correspondiente en el manual de QGIS. Es una buena idea, usar dicho manual como
un texto de ayuda a lo largo de esta guía.
Nota
Al haber utilizado ya la caja de procesos en módulos previos, posiblemente en este apartado
repetiremos algunos algoritmos, aunque usaremos otros nuevos y también algunos de los algoritmos
ya vistos los ejecutaremos pero utilizando diferentes herramientas externas. Con frecuencia QGIS
dispone de un mismo algoritmo implementado de diferentes formas y con diferentes bibliotecas, la
práctica nos dirá qué algoritmo se ejecuta más rápidamente o cual dispone de más opciones.
4
MÓDULO 9. La guía de procesamiento de QGIS
Los nombres de los algoritmos siempre se pueden buscar en inglés, además en muchos casos
aparecen también traducidos al español y también se pueden buscar en este idioma:
Fíjate que en este caso se han encontrado dos algoritmos con un nombre con un significado similar
que además realizan el mismo análisis, pero uno es un algoritmo nativo de QGIS y el otro es del
programa externo SAGA (que se habrá instalado con QGIS por defecto en MS Windows).
En este caso vamos a utilizar el algoritmo de QGIS nativo. Haz doble clic en él.
5
MÓDULO 9. La guía de procesamiento de QGIS
Todos los algoritmos tienen una interfaz similar, que básicamente contiene los parámetros de entrada
que hay que rellenar, y las salidas que tienes que seleccionar dónde almacenar. En este caso, las
únicas entradas que tenemos son una capa vectorial.
Nota
Tenga en cuenta que los archivos temporales se borran una vez que cierre QGIS. Si crea un proyecto
con una producción que se guardó como una salida temporal, QGIS se quejará cuando intenta abrir la
espalda al proyecto más adelante, ya no existirá ese archivo de salida.
Una vez que haya configurado el diálogo algoritmo, pulse Ejecutar para ejecutar el algoritmo:
Realiza una captura de pantalla de QGIS parecida a la imagen superior donde aparezca la tabla de
atributos. Pega la imagen en la plantilla de resultados.
Lo primero que vamos a hacer es crear una capa de puntos de las coordenadas en la tabla, usando el
algoritmo Capa de puntos a partir de tabla (points layer from table). Ahora ya sabes cómo utilizar el
cuadro de búsqueda, por lo que no debería ser difícil encontrarlo. Haz doble clic en él para ejecutarlo y
abrir su cuadro de diálogo (imagen inferior).
7
MÓDULO 9. La guía de procesamiento de QGIS
Este algoritmo, como el de la lección anterior, simplemente genera una única salida, y tiene tres
entradas:
Tabla: la tabla con las coordenadas. Selecciona aquí la tabla alfanumérica de los datos de la
lección.
SRC objetivo: Este algoritmo no toma el SRC de las capas de entrada. En su lugar, se pide que
selecciones manualmente el SRC de las coordenadas de la tabla.
Haz clic en el botón de la parte derecha para abrir el selector de QGIS de los SRC y selecciona
EPSG:4326 . Estamos utilizando este SRC, porque sabemos que las coordenadas de la tabla
vienen georreferenciadas con él.
Lo siguiente que necesitamos es la capa de polígonos. Vamos a crear una cuadrícula regular de
polígonos utilizando el algoritmo Crear cuadrícula (create grid), que tiene el diálogo de parámetros de
la imagen siguiente:
8
MÓDULO 9. La guía de procesamiento de QGIS
Como en el caso del último algoritmo, tenemos que entrar en el CRS aquí también. Seleccione
EPSG: 4326 como el CRS de destino, como lo hicimos antes.
Las demás entradas necesarias para crear la cuadrícula son numéricas. Cuando hay que introducir un
valor numérico en cualquier algoritmo de la caja de procesado, se tienen dos opciones: escribir
directamente en la casilla correspondiente o haciendo clic izquierdo sobre el botón al final de la línea
para llegar a un diálogo como el que se muestra a continuación.
El último paso es contar los puntos en cada uno de los rectángulos de esa retícula. Vamos a
utilizar el geoproceso Contar puntos en polígono (count points in polygon) .
Abre la tabla de atributos de la nueva capa añadida y comprueba como el campo NUMPOINTS
contiene el número de puntos de cada polígono.
Si deseas que todos los archivos de salida se guarden en una carpeta determinada, no hace falta
escribir el nombre de la carpeta cada vez.
Ahora cuando al ejecutar un algoritmo, en la capa de salida, sólo tiene que utilizar el nombre de archivo
en lugar de la ruta completa.
Por ejemplo, con la configuración mostrada anteriormente, si introduce grid.shp como la ruta de
salida para el algoritmo que acabamos de utilizar, el resultado se guardará
en c:\exercise_data\processing\results\grid.shp . Todavía se puede introducir una ruta
completa en caso de querer un resultado que se guarda en una carpeta diferente.
Prueba tú mismo de nuevo el algoritmo Create Grid con diferentes tamaños de cuadrícula,
escribiendo en el fichero de salida directamente el nombre y comprueba como se crea dicho
fichero de salida en el directorio results .
Si no hay ninguna capa de entrada, se utilizará el SRC del proyecto de QGIS, a menos que el
algoritmo contenga un campo específico de SRC de salida (como pasó en la última lección con el
algoritmo de cuadrícula)
Abre el proyecto correspondiente a esta lección (example3) y verás dos capas con el nombre
23030 y 4326 .
Ambos contienen los mismos puntos, pero en diferente SRC ( EPSG:23030 y EPSG:4326 ).
Los puntos aparecen exactamente en la misma posición del terreno porque QGIS es capaz de
reproyectar en tiempo real todas las capas al SRC del proyecto, que en este caso es el EPSG:
4326, pero no son en realidad la misma capa. Es decir, los números de las coordenadas de los
puntos son totalmente diferentes.
11
MÓDULO 9. La guía de procesamiento de QGIS
Este algoritmo añade nuevas columnas a la tabla de atributos de una capa vectorial. El contenido de
las columnas depende del tipo de la geometría de la capa. En el caso de los puntos, añade nuevas
columnas con la coordenadas X e Y de cada punto.
Nota
Acuérdate que esto mismo lo hacíamos desde la calculadora de campos en módulos anteriores.
El otro parámetro del algoritmo ( calcular usando ) permite establecer cómo el algoritmo utiliza las
coordenadas para calcular el nuevo valor que va a añadir a las capas resultantes. La mayoría de los
algoritmos no tienen una opción así, y sólo utilizan las coordenadas de la capa directamente.
Selecciona la opción SRC de la capa que simplemente utilizará las coordenadas como
son. Así es como funcionan por defecto casi todos los geoalgoritmos de QGIS de la caja de
procesado.
Habrás obtenido una nueva capa con exactamente los mismos puntos que la otra dos capa. Si abres
las propiedades de la nueva capa, verás que utiliza el mismo SRC que la capa de entrada, es decir, el
EPSG: 4326. Cuando la capa se carga en QGIS, no se le pedirá que introduzca el SRC de la capa, ya
que QGIS ya lo sabe.
Abre la tabla de atributos de la nueva capa y comprueba que contiene dos nuevos campos
con las coordenadas X e Y de cada punto
Ahora repite el algoritmo pero con la otra capa, seleccionaremos como entrada la capa
23030 y la misma de opción de SRC de la capa
12
MÓDULO 9. La guía de procesamiento de QGIS
La tabla de atributos muestra valores diferentes de coordenadas lo que demuestra que originalmente
las coordenadas estaban en distinto SRC.
¿Qué debe aprender de esto? La idea principal detrás de estos ejemplos es que los geoalgoritmos
utilizan el SRC de la capa, ya que son los datos originales, e ignoran por completo las reproyecciones
que QGIS podría estar haciendo para renderizar (es decir, la proyección del proyecto).
En otras palabras, no hay que confiar en lo que se ve en el lienzo, y siempre tener en cuenta que se
utilizarán las coordenadas originales. Eso no es tan importante en este caso, ya que sólo estamos
usando una sola capa a la vez, pero en un algoritmo que necesita varias de ellas (por ejemplo, un
algoritmo de recorte), capas que parecen coinciden o superponerse pueden ser muy lejos unas de otras
(en coordenadas originales, que son las que utilizará el geoalgoritmo), ya que podrían tener diferentes
SRC.
El geoalgoritmo de QGIS Reproyectar capa (reproject layer) representa un caso particular del
comportamiento explicado, ya que tiene una capa de entrada (la que se desea reproyectar), pero no va
a usar el mismo SRC para la capa de salida, sino que va a solicitar un SRC nuevo, al cual reproyectar
la capa (y por tanto CAMBIAR sus coordenadas originales).
Hay otro geoalgoritmo para reproyección pero para capas ráster muy similar de GDAL y que veremos
en otro ejercicio más adelante. Se llama Combar (reproyectar) o Warpt (reproject).
Selecciona cualquiera de las capas como entrada y elige el EPSG:23029 como el SRC
destino. Ejecuta el algoritmo y obtendrás una nueva capa, idéntica a la de entrada, pero con
diferente SRC.
Aparecerá en la misma región del lienzo, al igual que las demás, ya que QGIS reproyecta
sobre la marcha todas las capas al SRC del proyecto, pero sus coordenadas originales serán
diferentes. Se puede ver añadiendo las columnas de X e Y como hemos hecho anteriormente.
Otra forma mucho más rápida de comprobar qué coordenadas originales tienen las geometrías de una
capa, consiste en seleccionar uno o varios elementos y hacer clic en el menú Edición / Copiar
objetos espaciales.
13
MÓDULO 9. La guía de procesamiento de QGIS
Esto copiará al portapapeles la definición en WKT (que es un formato en texto de la geometría del
elemento) más los valores de los atributos en texto.
Abre un editor de texto (como el bloc de notas) y pega el texto. De esta forma podrás
comprobar las coordenadas fuente de las geometrías.
Nota
El texto pegado tiene formato CSV (utilizando el tabulador como separador de columnas de atributos).
De esta forma fácilmente podrías grabar el texto del bloc de notas con la extensión .csv y abrirla con
programas como Excel o incluso QGIS (como si fuera una tabla).
12.6 Selección
Resumen
En esta lección vamos a ver cómo los algoritmos de procesamiento manejan selecciones en capas
vectoriales que se utilizan como capas de entrada, y cómo crear una selección a través de un
determinado tipo de algoritmo.
En casi todos los algoritmos de la caja de procesamiento tenemos disponible una casilla objetos
seleccionados solamente, que podemos marcar para ejecutar el proceso solo teniendo en cuenta los
objetos actualmente seleccionados en la capa de entrada.
Los algoritmos siguen las siguientes reglas simples cuando se utiliza una capa vectorial:
Si la capa tiene una selección, la casilla objetos seleccionados solamente aparecerá disponible, y
permitirá al usuario marcar o desmarcar dicha casilla para.
Si no hay selección, todos los objetos espaciales se utilizan y la casilla objetos seleccionados
solamente aparecerá no disponible.
Si la capa vectorial de entrada no se ha cargado previamente en QGIS (no forma parte de la lista
de capas del proyecto), no se podrá realizar una selección Fíjate que en la siguiente imagen
donde capa 4326.shp no está en la lista de capas, es decir, se ha seleccionado directamente en
el disco duro, y por tanto como es lógico no se puede aplicar a los objetos seleccionados, y la
casilla objetos seleccionados solamente aparecerá bloqueada.
Puedes probar tú mismo a seleccionar algunos puntos en cualquiera de las capas (de la lista de capas
del proyecto) que utilizaste en el ejercicio anterior, y al ejecutar el algoritmo de la reproyección marca
la casilla objetos seleccionados solamente. La capa reproyectada que se obtendrá contendrá sólo esos
puntos que se seleccionaron.
14
MÓDULO 9. La guía de procesamiento de QGIS
Sin embargo también se puede utilizar un geoalgoritmo para hacerlo. Los algoritmos para la creación
de una selección se encuentran en la sección Selección vectorial de la caja de herramientas:
Te habrás dado cuenta que este algoritmo no produce ninguna salida, y que modifica la selección de
la capa de entrada.
Dado que la selección no es parte de los datos en sí, sino algo que solo existe dentro de QGIS, estos
algoritmos de selección sólo deben utilizarse seleccionando una capa que se abre en QGIS, y no con
la opción de selección de archivo que se puede encontrar en el cuadro de valor de parámetro
correspondiente.
15
MÓDULO 9. La guía de procesamiento de QGIS
La selección que hemos hecho, como la mayoría de los creadas por el resto de algoritmos de selección,
también se puede hacer manualmente desde QGIS, por lo que puede preguntarse, ¿cuál es el objetivo
de utilizar un algoritmo para realizar una selección?
Aunque ahora mismo no tiene mucho sentido, más adelante veremos cómo crear modelos y scripts. Si
se desea hacer una selección en medio de un modelo (que define un flujo de trabajo de procesamiento),
sólo un geoalgoritmo se puede añadir al modelo, y otros elementos de QGIS y operaciones no se
pueden añadir. Esa es la razón por la que algunos algoritmos de procesamiento duplican funcionalidad
que también está disponible en otros elementos de QGIS.
Por ahora, sólo recuerda que las selecciones se pueden hacer usando geoalgoritmos de
procesamiento, y que los algoritmos sólo utilizarán los objetos espaciales seleccionados si existe una
selección y se marca la correspondiente casilla.
Todos los algoritmos que hemos ejecutado hasta ahora en este módulo son parte del framework de
procesamiento. Es decir, que son algoritmos nativos implementados en QGIS.
Sin embargo, una de las mayores características del framework de procesamiento es que puede utilizar
algoritmos de aplicaciones externas y ampliar las posibilidades de esas aplicaciones. Estos algoritmos
se convierten y se incluyen en la caja de herramientas, por lo que se pueden utilizar fácilmente en
QGIS.
Estos algoritmos externos requieren que ciertas aplicaciones sean instaladas en tu sistema, aunque si
has instalado QGIS en MS Windows, automáticamente se instalan también algunas de estas
aplicaciones externas como GRASS, SAGA o GDAL.
Si estás utilizando MS Windows, la mejor manera de trabajar con algoritmos de proveedores externos
es la instalación de QGIS usando el instalador independiente como seguramente hayas realizado en el
curso. En tal caso, el proceso de la instalación de todas las dependencias necesarias, incluyendo
SAGA, GRASS, GDAL, etc., y no hay nada más que realizar.
Abre la configuración de los Procesos y haz clic en la sección de Proveedores.
¿Linux u OSX? En caso de que esté utilizando Linux o OSX debe instalar SAGA de forma independiente
y asegurarse de que la carpeta SAGA está en path del sistema, por lo que se puede llamar desde la
consola (sólo tienes que abrir una consola y ejecutar el comando saga_cmd para comprobarlo).
Prueba con un algoritmo basado en SAGA, el llamado Split shapes layer randomly
Vamos a seguir con las capas de puntos utilizada en las dos prácticas anteriores.
La capa de entrada se ha dividido en dos capas, cada una con el mismo número de puntos. Este
resultado ha sido calculado por SAGA, y más tarde importado por QGIS y añadido al proyecto de QGIS.
Si todo va bien, no notarás ninguna diferencia entre este algoritmo basado en SAGA y uno de los otros
que hemos ejecutado anteriormente (nativos de QGIS).
Sin embargo, SAGA podría, por alguna razón, no ser capaz de producir un resultado y no generar el
archivo que QGIS está esperando. En ese caso, habrá problemas para añadir el resultado del proyecto
de QGIS, y un mensaje de error.
Este tipo de problemas puede ocurrir, incluso si SAGA (o cualquier otra aplicación que estamos
llamando desde el framework de procesado) se ha instalado correctamente, y es importante saber cómo
tratar con ellos. Vamos a producir uno de los mensajes de error.
Abre el algoritmo de SAGA Create polygons graticule y utiliza los siguientes valores. Fíjate
como introducimos un valor negativo en el ancho de la división. Esto provocará un fallo en
SAGA:
17
MÓDULO 9. La guía de procesamiento de QGIS
Estamos utilizando unos valores de división de anchura y altura que son más grandes que la extensión
especificada, por lo SAGA no puede producir ninguna salida. En otras palabras, los valores de los
parámetros están mal, pero no se comprueban hasta que SAGA trata de crear la capa de salida. Como
no puede producir la capa aparecerá el siguiente mensaje de error:
En la sección Algorithm aparecen todos los algoritmos que se ejecutan, incluso si se ejecutan desde
la GUI (interfaz gráfica de QGIS) y no desde la consola (que se explicará más adelante en este manual),
se almacenan en esta parte del registro como una llamada de un comando de la consola.
Eso significa que cada vez que se ejecuta un algoritmo, se añade un comando de consola en el registro,
y puedes comprobar el historial completo de la sesión de trabajo.
- Esto puede ser muy útil cuando se utilizan los comandos desde la consola, para
aprender acerca de la sintaxis de los algoritmos.
- El historial también es interactivo, y se puede volver a ejecutar cualquier algoritmo
anterior simplemente haciendo doble clic sobre su entrada.
A continuación copia el comando anterior (en la línea >>> de debajo de la ventana) y presiona
enter:
19
MÓDULO 9. La guía de procesamiento de QGIS
La calculadora ráster es uno de los algoritmos más potentes que encontrarás. Es un algoritmo muy
flexible y versátil que se puede utilizar para muchos cálculos diferentes, y que pronto se convertirán en
una parte importante de tu caja de herramientas.
En esta lección vamos a realizar algunos cálculos con la calculadora ráster, la mayoría de ellos bastante
simple. Esto nos permitirá ver cómo se utiliza y cómo soluciona algunas situaciones particulares que
podrías encontrar para comprender ciertas técnicas que se aplican habitualmente.
Abre el proyecto de QGIS correspondiente a esta lección (example4) y verás que contiene
varias capas ráster.
Ahora abre la caja de herramientas y abre el diálogo correspondiente al algoritmo Calculadora
ráster (Raster Calculator).
Las capas a utilizar para el análisis. Hay una primera capa principal (Main input layer). Si el
algoritmo utiliza más de una capa, entonces podemos ponerlas en la casilla de Additional layers
que es de selección múltiple.
La fórmula a aplicar. La fórmula utiliza las capas seleccionadas en el parámetro anterior, que se
nombran usando letras del alfabeto (a, b, c, etc. ) o g1, g2, g3, etc. como nombres
de variables. Es decir, la fórmula a + 2 * b es lo mismo que g1 + 2 * g2 y calculará la
suma del valor en la primera capa más dos veces el valor en la segunda capa. El orden de las
capas es el mismo orden que se ve en el cuadro de diálogo de selección.
Advertencia
La calculadora es sensible a mayúsculas.
Para empezar, vamos a cambiar las unidades del MDE de metros a pies. La fórmula que necesitamos
es la siguiente: h'= h * 3.28084
Selecciona el MDE (capa dem25 ) en la casilla Main input layer y escribe a * 3.28084 en el
campo de Fórmula.
Advertencia
Para los usuarios ingleses: utilizar siempre “,” en lugar de “.” en la separación del punto decimal
La capa de entrada que utilizamos tiene valores válidos en todas sus celdas, por lo que la casilla
Use NoData no tiene ningún efecto en absoluto.
Haga clic en Ejecutar para ejecutar el algoritmo. Se creará una capa que tiene la misma
apariencia de la capa de entrada, pero con diferentes valores.
Ahora vamos a realizar otro cálculo, esta vez con la capa accflow. Esta capa contiene los valores de
flujo acumulado, un parámetro hidrológico. Contiene los valores sólo dentro del área de una cuenca
determinada, con valores de no-data fuera de ella.
Abre el diálogo algoritmo nuevo, selecciona la capa accflow como la única capa de entrada,
e introduce la siguiente fórmula: log (a) .
Para el siguiente ejercicio vamos a utilizar dos capas en lugar de una. El objetivo es obtener una nueva
capa DEM a partir de la capa dem25 pero que se restringa a los límites de la capa accflow, es decir
con valores de elevación válidos sólo dentro de la cuenca que se define en la segunda capa.
Abre el diálogo calculadora y selecciona las dos capas del proyecto en el campo de las capas
de entrada (accflow como Main input layer). Escriba la fórmula siguiente en el campo
correspondiente: a / a * b
a se refiere a la capa de flujo acumulado accflow (ya que es la primera en aparecer en la lista)
y b se refiere a la dem25.
Lo que estamos haciendo en la primera parte de la fórmula es dividir la capa de flujo acumulado por sí
misma, lo que resultará en un valor de 1 en el interior de la cuenca, y un valor no-data fuera.
Luego multiplicamos por el dem25, para obtener el valor de elevación en esas células en el interior de
la cuenca (DEM * 1 = DEM) y el valor sin datos fuera (DEM * NO_DATA = NO_DATA)
Esta técnica se utiliza con frecuencia para aplicar máscaras en una capa ráster, y es útil cuando se
desea realizar cálculos para una región distinta que la región rectangular que se utiliza por defecto en
una capa ráster.
Hay otras cosas interesantes acerca de este algoritmo que acabamos de ejecutar, además de los
valores no-data y la forma en que se manejan. La extensión de las capas de entrada eran diferentes
(lo puedes comprobar en las propiedades de capa capa), en efecto la extensión de la capa accflow es
más pequeña que la de la capa dem25
Nota
Eso significa que las capas no son iguales, y que no se puede multiplicar directamente sin
homogeneizar sus tamaños y extensiones mediante un algoritmo de remuestreo en una o ambas capas
para alinear los dos ráster y de esta forma que cada píxel de uno coincida con exactamente un píxel
del otro en el espacio.
Sin embargo, nosotros no hicimos nada. QGIS se hace cargo de esta situación y automáticamente
remuestreay alinea (align) las capas de entrada cuando es necesario. La extensión de salida es el
grado de recubrimiento mínimo calculado a partir de las capas de entrada, y el tamaño de celda mínimo
de sus tamaños de celda originales.
En este caso (y en la mayoría de los casos), se obtienen los resultados deseados, pero siempre se
debe tener presente todas las operaciones adicionales que se están produciendo, ya que podrían
afectar el resultado. En los casos en que este comportamiento no sea el deseado, se puede aplicar un
remuestreo manual por adelantado para alinear las capas. En capítulos posteriores, veremos más
sobre el comportamiento de los algoritmos utilizando múltiples capas ráster.
Vamos a terminar esta lección con otro ejercicio de aplicación de máscaras. Vamos a calcular la
pendiente en todas las zonas con una altitud entre los 1000 y 1500 metros.
En este caso, no tenemos una capa como una máscara, pero podemos crearla con la calculadora.
Ejecuta la calculadora con dem25 como única capa de entrada y la siguiente fórmula (cuando
se utiliza una función no pongas un espacio antes del paréntesis de entrada porque quizás no
funcione): ifelse(abs(a - 1250) < 250, 1, 0/0)
Como se puede ver, se puede utilizar la calculadora no sólo para hacer las operaciones algebraicas
simples, sino también para funcionar cálculo más complejo que implica aplicar condicionales, como la
de arriba.
El resultado tiene un valor de 1 dentro de la gama que queremos trabajar, y sin datos en las celdas
fuera de ella.
23
MÓDULO 9. La guía de procesamiento de QGIS
El valor no-data proviene de la expresión 0/0 . Dado que es un valor indeterminado, SAGA agregará
un NaN (Not a Number), que en realidad es manejado como un valor sin datos ( no-data ). Con este
pequeño truco se puede establecer un valor sin datos sin necesidad de conocer el valor no-data en
SAGA.
Ahora multiplica (con la calculadora ráster de SAGA) el ráster obtenido por la capa de
pendientes (slope.tif) que se incluye en el proyecto, y obtendrá el resultado deseado.
Realiza una captura de pantalla de QGIS parecida a la imagen superior. Pega la imagen en la
plantilla de resultados
También se podría hacer todo en una sola operación con la calculadora. Lo dejamos como ejercicio
para el lector.
Por defecto, el tipo seleccionado es de tipo float donde cada píxel ocupa 4 bytes y permite almacenar
valores decimales, pero este tipo no siempre es adecuado u óptimo.
Para esta práctica vamos a repetir la creación de la máscara sobre la capa dem25 que hemos hecho
antes aplicando la fórmula: ifelse(abs(a - 1250) < 250, 1, 0/0) pero esta vez vamos a
modificar el tipo de ráster de salida.
La fórmula solo devuelve valores de 0 y 1, por lo tanto en lugar de almacenar el resultado en un ráster
de tipo float [7], vamos a almacenarlo utilizando el tipo [1] y [3] que son enteros sin signo, de 1 y 2
bytes respectivamente.
Repite el proceso tres veces, y da un nombre de la capa de salida (p. ej.: mascara_uint1byte,
mascara_uint2byte, mascara_float). Quizás debas de poner la extensión del formato ráster
por defecto que maneja SAGA que es .sdat al poner el nombre del fichero de salida.
Posteriormente comprueba el tamaño de los ficheros tiff creados en el disco duro (recuerda que si has
puesto solo el nombre del fichero y no la ruta entera, éste se habrá almacenado en la ruta configurada
en la carpeta de salida de la configuración de procesos) y también mira la información de la capa en
QGIS (propiedades de la capa / información) para rellenar la siguiente tabla (también podrías utilizar
gfdalinfo para obtener la información desde la caja de procesos buscando el algoritmo Información
del ráster):
Este tipo de comportamiento puede cambiar según el algoritmo utilizado, por ejemplo si utilizamos la
calculadora ráster de GDAL, entonces GDAL nos deja especificar el valor para no-data, lo cual es más
adecuado que lo que hace SAGA.
No hace falta que hagas este ejercicio, pero por curiosidad te mostramos la pantalla de la calculadora
ráster de GDAL, configurada para que el valor de no-data sea 255 y el tipo de salida Byte.
La forma de expresar la condición: ifelse(abs(a - 1250) < 250, 1, 0/0) en GDAL cambia
mucho, ya que utiliza la biblioteca numpy para definir las expresiones y se debe de utilizar su sintaxis:
where(absolute(A-1250)<250,1,255)
La calculadora de SAGA como hemos visto tiene más opciones (como el tipo de píxel de salida)
que la de QGIS, pero al igual que la de QGIS no controla el valor utilizado para no-data (como
sí lo hace GDAL).
26
MÓDULO 9. La guía de procesamiento de QGIS
En cuanto a rapidez la de SAGA es claramente la más lenta y que más recursos consume al
tener que hacer conversiones a su formato nativo (sdat). La de GDAL es la más rápida.
En cuanto a la expresión o fórmula a utilizar desde luego la más fácil e intuitiva es la de QGIS,
aunque la de SAGA y la de GDAL son más potentes, su gramática es más complicada. La de
GDAL aunque es más compleja que la de QGIS, tiene la ventaja de que es más potente que la
de SAGA y además utiliza la gramática estándar de la biblioteca numpy.
Como resumen, para un usuario no experimentado lo normal es utilizar la calculadora ráster de
QGIS, y conforme se avanza un poco nos pasaríamos a la de GDAL. La de SAGA solo la
utilizaríamos si hay alguna expresión que no sabemos poner en la de GDAL.
RESUMEN
Recomendamos pues tras realizar los primeros experimentos y análisis espaciales, empezar a utilizar
la calculadora de GDAL y dejar únicamente la de SAGA par algún caso especial que nuestra
experiencia demuestre que la de GDAL no es apta para dicho cálculo.
Abre el proyecto de QGIS correspondiente a esta lección (example5) y verás que contiene una
capa vectorial census_boundaries .
Ya sabemos cómo utilizar la calculadora ráster para crear nuevas capas ráster utilizando expresiones
matemáticas.
Una herramienta similar está disponible para capas vectoriales, y genera una nueva capa con los
mismos atributos de la capa de entrada, además de uno adicional con el resultado de la expresión
introducida. El algoritmo se llama Calculadora de campos o Field Calculator (es un algoritmo nativo
de QGIS).
Ya la has utilizado bastante en módulos anteriores desde el botón , así que ahora la recordaremos
y también utilizaremos alguna expresión nueva.
Accede a ella esta vez desde la caja e procesado buscando el algoritmo Calculadora de
campos o Field Calculator. Verás que es casi igual que la accedida desde , pero con una
gran diferencia y es que no modifica la capa actual sino que crea una nueva con el resultado.
En primer lugar, vamos a calcular la densidad de población de raza blanca en cada polígono, lo
que representa un censo. Tenemos dos campos en la tabla atributos que podemos utilizar para
eso, es decir, WHITE y SHAPE_AREA. Sólo tenemos que dividirlos y multiplicar el resultado por
un millón (para tener la densidad por kilómetro cuadrado), por lo que podemos utilizar la siguiente
fórmula en el campo correspondiente:
Esto generará una nueva capa que será copia de census_boundaries pero tendrá además un nuevo
campo denominado WHITE_DENS
Ahora vamos a calcular la relación entre los campos de hombres y mujeres ( MALES y FEMALES ) para
crear un nuevo campo que indique si la población masculina es numéricamente predominante sobre la
población femenina.
Ahora que ya sabes utilizar la calculadora de campos, crea otro campo nuevo llamado
RATIO y aplica la siguiente fórmula: 1.0 * "MALES" / "FEMALES"
IMPORTANTE: Como ambos campos "MALES" y "FEMALES" son de tipo entero, el resultado se
trunca a un entero. Por esa razón multiplicamos por 1.0 el valor "MALES" , de esta forma el resultado
será decimal, ya que 1.0 es un número decimal.
Otra forma para convertir un valor a número flotante sería utilizar la función to_real que se
encuentra en la lista de funciones de la calculadora de campos en la sección de Conversiones.
to_real("MALES") / "FEMALES"
Nota
La diferencia entre utilizar el Field Calculator desde la caja de herramientas de procesado respecto al
botón de la tabla de atributos en el interfaz de QGIS, es que el algoritmo de la caja de procesado crea
siempre una nueva capa con el resultado final, mientras que la otra opción actualiza la tabla de atributos
de la capa.
Podemos incluso utilizar funciones condicionales para obtener un nuevo campo que indique qué valor
es el predominante.
CASE WHEN "MALES" > "FEMALES" THEN 'male' ELSE 'female' END
28
MÓDULO 9. La guía de procesamiento de QGIS
Realiza una captura de pantalla de QGIS parecida a la imagen inferior, donde se vea una tabla de
atributos con los tres campos nuevos. Pega la imagen en la plantilla de resultados
Nota
El nombre de los campos se puede poner sin comillas en la calculadora de campos pero solo en el
caso de que no tengan ningún espacio en el nombre. Por seguridad al hacer clic en la lista de campos
de la calculadora de campos ésta los pondrá entre comillas siempre.
Algunos algoritmos requieren una medida para definir el área a ser cubierta por el análisis que realizan,
y por lo general para definir la extensión de la capa resultante.
Cuando se requiere una medida, se puede definir manualmente mediante la introducción de los cuatro
valores que lo definen ( min X, min Y, max X, max Y ), pero hay otras formas más prácticas y
más interesantes de hacerlo, lo vamos a ver en esta lección.
En primer lugar, vamos a abrir un algoritmo que requiere definir una extensión. Abre el algoritmo
de GDAL llamado Rasterizar (vectorial a ráster) o Rasterize (vector to raster) que convierte
una capa vectorial a ráster.
Configura el diálogo para rasterizar la capa vectorial con un tamaño de píxel de 10x10 metros,
como aparece a en la siguiente imagen:
Fíjate en los diferentes métodos para rellenar la extensión (casilla Extensión de salida):
- Seleccionar extensión sobre el lienzo: este método nos permite seleccionar con el ratón un
rectángulo sobre el lienzo/vista de QGIS con la extensión.
- Usar la extensión de la capa: este método permite seleccionar una capa, que puede ser la
misma que la de entrada o cualquier otra, QGIS usará la extensión de dicha capa para definir
la extensión de la nueva capa creada.
Ejecuta el algoritmo y comprueba que la extensión de la capa resultante es la misma que la capa
watersheds
Todas las salidas que hemos producido hasta ahora en este módulo eran capas (ráster o vector). Sin
embargo, algunos algoritmos generan salidas en forma de texto y gráficos. Todas estas salidas se
crean mediante archivos HTML y se muestran en el Panel Visor de Resultados (o también en el
menú Procesos > Visor de Resultados).
Ya hemos utilizado en módulos anteriores algún algoritmo que devuelve una salida textual, como las
estadísticas básicas para campos… o Información del ráster (comando gdalinfo de GDAL). Ahora
vamos a ver una nueva funcionalidad que consiste en averiguar información pero de un fichero
vectorial (comando ogrinfo de GDAL) con el algoritmo Información del Vectorial o Vector
Information.
Abre el proyecto html ( processing / example7 ) con los datos que se utilizarán en esta
lección y luego abre el algoritmo Información del Vectorial o Vector Information.
El algoritmo es bastante simple y sólo se deben seleccionar la capa a utilizar. La salida es de tipo HTML
y se puede introducir la ruta de un archivo o dejarlo en blanco para almacenarla en un archivo temporal.
En este caso, sin embargo, sólo se permiten las extensiones html and htm , de modo que no hay
manera de alterar el formato de salidoautilizando cualquier otra.
Marca la opción Salida resumen solo , ya que sino sacará información de todas las features
que contiene la capa y Ejecuta el algoritmo seleccionando como entrada la única capa del
proyecto.
Al finalizar el algoritmo, aparecerá una nueva entrada en el Visor de resultados. Haz doble clic en
Información de la capa para acceder el informe html en el navegador.
El Visor de resultados mantiene accesibles de forma sencilla todos los resultados HTML generados
durante la sesión actual, de forma que puedan ser consultados cuando sea necesario. Al igual que
sucede con las capas, si la salida se ha guardado en un archivo temporal, ésta se eliminará al cerrar
QGIS. Si se ha guardado en un archivo no temporal, éste se mantendrá, pero no aparecerá en el Visor
de resultados la próxima vez que se inicie QGIS.
Algunos algoritmos generan los textos de forma que se pueden almacenar en variables. Ahora mismo
esto no tiene ninguna importancia, pero conforme nos movamos al modelador gráfico, comprobaremos
que nos permite utilizar dichos valores como entradas numéricas para otros algoritmos.
31
MÓDULO 9. La guía de procesamiento de QGIS
Lo primero que debe hacer es calcular el diagrama de Voronoi (también conocido como polígonos de
Thyessen) de la capa de bombas de agua, para obtener la zona de influencia de cada bomba.
Ejecuta el algoritmo de Polígonos Voronoi o Voronoi Polygons y crea los polígonos de
Voronoi.
Claramente, muchos de los casos de cólera se encuentran dentro de uno de los polígonos
Para obtener un resultado más cuantitativo, podemos contar el número de muertes en cada polígono.
Dado que cada punto representa un edificio donde las muertes ocurrieron, y el número de muertes se
almacena en un atributo, no podemos contar solo los puntos.
El nuevo campo se llamará DEATHS , y usamos el campo COUNT como campo de ponderación. La
tabla resultante refleja claramente que el número de muertes en el polígono correspondiente a la
primera bomba es mucho más grande que los otros.
33
MÓDULO 9. La guía de procesamiento de QGIS
Otra buena forma de visualizar la dependencia de cada punto de la capa Cholera_deaths con un punto
de la capa Pumps es dibujar una línea desde cada muerte a la bomba más cercana. Esto se puede
hacer con la herramienta Distancia al eje más próximo – Línea a eje (Distance to Nearest Hub –
line to hub) y el uso de la configuración que se muestra a continuación.
Una capa de densidad también nos dará una visión muy clara de lo que está sucediendo.
Podemos crearla con el algoritmo Mapa de calor (Estimación de densidad de núcleo) o
Heatmap (Kernel Density Estimation).
Utiliza la capa Cholera_deaths, su campo COUNT como campo de peso, con un radio de
100 m, el tamaño del píxel (celda) de salida a 0.5 m, y la forma (shape) de kernel a
cuartic .
34
MÓDULO 9. La guía de procesamiento de QGIS
Cubren un área que es demasiado grande para lo que queremos (que estamos interesados en
una región más pequeña alrededor del centro de la ciudad).
Dicha área se encuentra en dos capas ráster diferentes (los límites de la ciudad caen en sólo
una, pero como se ha dicho, queremos alguna área adicional a su alrededor).
Para calcular el cuadro de límite, podemos utilizar el algoritmo de QGIS Extraer extensión
de la capa (Extract layer extent). Ejecuta dicha herramienta con los siguientes parámetros:
Para extender el cuadro vamos a utilizar el algoritmo de QGIS Buffer con una distancia de 0.25
unidades. Luego calcularemos de nuevo el polígono de la extensión de la capa resultante.
36
MÓDULO 9. La guía de procesamiento de QGIS
Ejecuta dicho proceso con una distancia de 0,25 grados y deja los demás parámetros por
defecto.
Sobre la capa de salida del buffer vuelve a aplicar el algoritmo Extraer extensión de la capa.
Ejecuta para crear una capa rectangular con la nueva extensión.
La capa resultante la utilizaremos para cortar los ráster, hemos cambiado su nombre a Recorte.
Para realizar la operación de recorte, así como otras operaciones de análisis espacial como la
intersección, hace pocas versiones QGIS necesitaba que ambas capas tuvieran el mismo SRC nativo,
y si no era así era necesario reproyectar una de las capas al SRC de la otra.
Ahora, en algunas operaciones QGIS realiza esta reproyección de forma interna y transparente para el
usuario. La ventaja es que el usuario no se tiene que preocupar si las capas están en diferente SRC.
El inconveniente, es que quizás el usuario no es consciente que en ocasiones QGIS aplicará
reproyecciones, y si hablamos de capas ráster también podrá aplicar algún algoritmo de interpolación
(remuestreo o resampling) a la capa ráster, así como algún tipo de transformación entre datums no
deseada. Es decir, el usuario pierde el control de qué está haciendo el software con sus datos.
Por lo tanto, desde este curso RECOMENDAMOS SIEMPRE al realizar una operación de análisis entre
capas con diferente SRC, reproyectar de forma manual a un SRC común a ambas capas.
En este caso la capa de Recorte está en el SRC EPSG:4236 y la capa ráster dem1 o dem2, está
en el SRC EPSG:4269 .
Vamos a reproyectar la capa Recorte al SRC EPSG:4269 . Es mucho más fácil reproyectar 4 vértices
del polígono de recorte, que los millones de píxeles de dem1 para llevarla al SRC de la otra capa.
Nota
Si deseas asegúrate del SRC original de las capas dem1 y dem2, utiliza el proceso Información
Ráster que utilizará el comando gdalinfo y creará un html con el resultado de los metadatos del ráster.
El algoritmo de SAGA es Clip raster with polygon mientras que el algoritmo de GDAL es Cortar
ráster por capa de máscara (Clip raster by mask layer).
Puedes comparar ambos algoritmos y ver su velocidad de ejecución, las opciones que permite, etc.
IMPORTANTE: En términos generales si la misma funcionalidad se encuentra con GDAL y SAGA, es
más aconsejable utilizar GDAL por razones de eficiencia, ya que es un biblioteca ampliamente usada
no solo en QGIS sino en otros muchos proyectos y está muy optimizada. Además QGIS está mejor
integrado con GDAL, ya que es la biblioteca que utiliza el mismo.
En las capturas hemos decidido guardar las salidas de forma permanente (no temporal) dándoles un
nombre simplemente porque de esta forma queda más claro los cuadros de diálogo (p. ej. Las rutas
utilizadas en el comando gdalwarp) aunque puedes dejar la salida como temporal sin ningún problema.
Ejecuta de nuevo la misma operación pero con el ráster dem2 de entrada y crea el ráster
dem2rec.tif de salida
Se propone al alumno realizar los mismos recortes pero utilizando el algoritmo de SAGA Clip
raster with polygon. Tras ello responde a las preguntas abajo planteadas en la plantilla de
resultados:
Una vez que las capas han sido recortadas, se pueden juntar utilizando el algoritmo de
GDAL Combinar (Merge) o el algoritmo de SAGA Mosaic Raster Layers . Elige uno de los dos
para unir los dos rásters.
Algoritmo de GDAL:
Ejecuta dicha herramienta con los siguientes parámetros. Selecciona en Capas de entrada
las capas: dem1rec y dem2rec .
Guarda la capa de salida como fulldem o si quieres déjala como temporal. Deja el resto de
parámetros por defecto.
39
MÓDULO 9. La guía de procesamiento de QGIS
Algoritmo de SAGA:
En este caso el algoritmo de SAGA dispone de más opciones que el de GDAL como elegir el
comportamiento en las zonas comunes de los ráster a unir.
Ejecuta el algoritmo Mosaic Raster Layers con los siguientes parámetros. Selecciona en
Input Grids , las dos capas en input Grids: dem1rec y dem2rec . Rellena el resto de
parámetros como la imagen inferior.
Para elegir el parámetro Cellsize consultaremos el tamaño de celda de las capas dem1 o
dem2. Puedes verlo en propiedades de la capa, en la pestaña información o ejecutar el
proceso de Información Ráster.
Nota
Puedes ahorrar tiempo fusionando primero y luego recortando las capas, y evitarás así llamar al
algoritmo de recorte dos veces. Sin embargo, si hay varias capas que fusionar y tienen un tamaño
bastante grande, el resultado final contendrá una capa muy grande que puede ser difícil de procesar.
En este ejemplo hemos llamado al algoritmo de recorte varias veces, lo que podría llevar mucho tiempo
al tener que repetir la configuración del proceso si tuviéramos muchas capas que recortar, pero no te
preocupes, pronto veremos que hay algunas herramientas adicionales para automatizar la operación
de repetir un algoritmo. En este ejemplo, sólo tenemos dos capas, por lo que no debemos preocuparnos
por eso ahora.
40
MÓDULO 9. La guía de procesamiento de QGIS
Para que el cálculo de pendientes, direcciones, sombreado, etc. sea correcto la capa fulldem debería
tener las coordenadas planimétricas X e Y en metros y para lograr esto hay que reproyectar la capa
fulldem a un CRS proyectado antes de calcular la pendiente.
Vamos a reproyectar la capa fulldem al SRC EPSG:3857 (Esférica de Mercator) y de esta manera
calcular la pendiente correctamente.
Para reproyectar capas en formato ráster, tenemos el algoritmo de GDAL que se llama Combar
(reproyectar) o en inglés Wrap (reproject) y que utiliza el comando warp de GDAL.
Ejecuta dicha herramienta con los siguientes parámetros: seleccionamos las capa de
entrada: fulldem y el SRC destino a EPSG:3857
Ahora ya podemos calcular la capa de pendientes a partir de fulldem3857. Para ello, podemos
utilizar el algoritmo pendiente (slope) de GDAL o el Slope, aspect, curvature de SAGA.
Por ejemplo ejecuta el algoritmo con GDAL con los siguientes parámetros:
41
MÓDULO 9. La guía de procesamiento de QGIS
Realiza una captura de pantalla de QGIS parecida a la imagen superior, donde se vea la capa
final de pendientes. Pega la imagen en la plantilla de resultados
Puedes probar a realizar las pendientes de la capa sin reproyectar fulldem y comparar el resultado
de los valores obtenidos en las celdas (que será erróneos).
42
MÓDULO 9. La guía de procesamiento de QGIS
A partir de un MDE, vamos a extraer una red de canales, delimitar las cuencas hidrográficas y calcular
algunas estadísticas.
Carga el proyecto con los datos de la lección (proyecto hydro.qgs en processing >
example10 ), que sólo contiene un MDE
La imagen de abajo muestra la zona de captación (tras ajustar el histograma con ) calculada
aunque no se visualiza muy bien. Para saber por qué, se puede echar un vistazo al histograma y verás
que los valores no se distribuyen de manera uniforme (hay algunas celdas con muy alto valor, los
correspondientes a la red de canales).
Recuerda como hicimos antes que con fines de visualización calculamos el algoritmo de dicha capa
para verla mejor, así que si quieres puedes probarlo por ti mismo.
La zona de captación (también conocida como acumulación de flujo), se puede utilizar para establecer
un umbral para la iniciación de canal. Esto se puede hacer utilizando el algoritmo Channel network.
43
MÓDULO 9. La guía de procesamiento de QGIS
Ahora, vamos a utilizar el algoritmo Watersheds Basins para delinear las subcuencas
correspondientes a esa red de canales, utilizando como puntos de salida de todas las uniones
(bifurcaciones) en ella.
44
MÓDULO 9. La guía de procesamiento de QGIS
Ejecuta el algoritmo Watersheds Basins de SAGA con los siguientes parámetros (puedes
dejar si quieres la salida en temporal):
Obtendremos una capa ráster que contiene las subcuencas, que vectorizaremos después:
Ahora podemos vectorizar el resultado utilizando los algoritmos Poligonizar (ráster a vectorial) o en
inglés Polygonize (raster to vector) de GDAL o Vectorising grid clases de SAGA.
Ejecuta el algoritmo Poligonizar (ráster a vectorial) de GDAL con los parámetros (deja
si quieres la capa de salida temporal):
45
MÓDULO 9. La guía de procesamiento de QGIS
Como ejemplo, también te ponemos el diálogo del correspondiente algoritmo (Vectorise raster
classes ) en SAGA.
En la imagen, la capa de salida (simbolizada por el campo DN) está renombrada a BasinsVector :
Ahora vamos a probar a obtener estadísticas del MDE de alguna de las áreas de las subcuencas
(tenemos 7 áreas). Esta tarea se puede realizar de muchas maneras como:
3) Por último, se puede realizar lo mismo que en la solución 2 pero en lugar de utilizar como
capa de zonas una capa vectorial (BasinsVector) se puede utilizar directamente la capa ráster
(Basins).
Para ello, debemos utilizar el algoritmo de QGIS Raster layer Zonal Statistics o el de SAGA
Zonal raster statistics que trabajan íntegramente con datos ráster.
La ventaja es que no es necesario vectorizar previamente la capa Basins pero como desventaja
los resultados obtenidos son una tabla alfanumérica, lo cual es menos útil que la capa vectorial
de las zonas con sus estadísticas asociadas.
46
MÓDULO 9. La guía de procesamiento de QGIS
De estas tres formas vamos a ejecutar a continuación el método 2 (con QGIS) por ser el más sencillo
y rápido. Dejamos también indicado la solución con el método 3, porque aunque es más compleja
incluye una operación de unión de tablas de atributos lo cual si el alumno no lo ha realizado antes
puedes ser interesante.
Hemos cambiado el prefijo DN_ de los campos que serán añadidos a la tabla de atributos de
la capa BasinsVector.
Selecciona también algunos estadísticos (cada uno será un campo nuevo de BasinsVector),
como por ejemplo: Número, Suma, Media, Min, Max y Varianza .
Este algoritmo no crea una capa nueva, sino que añade a la capa de zonas BasinsVector los atributos
con las estadísticas calculadas de la capa dem25 para cada polígono.
Realiza una captura de pantalla de QGIS parecida a la imagen superior, donde se vea la tabla de
atributos con las estadísticas de las subcuencas. Pega la imagen en la plantilla de resultados
47
MÓDULO 9. La guía de procesamiento de QGIS
Por último se ponen los pasos para realizar el ejercicio siguiendo la solución 3 con QGIS con el
algoritmo Raster layer Zonal Statistics.
- En Capa de entrada, elegiremos la capa de datos para las estadísticas, es decir, la capa dem25
- En Capa de zonas / Zones layer elegiremos la capa zonal, es decir, la capa ráster Basins
El algoritmo creará una tabla alfanumérica (es decir, sin ninguna geometría asociada, ya que proviene
de análisis ráster) Estadísticas con estadísticas similares a las obtenidas en el apartado anterior:
La tabla recién creada Estadísticas tiene un campo zone que coincide con el número de subcuenca
que también aparece como el campo DN de la capa de atributos de la capa vectorial de las subcuencas
BasinsVector.
Como vemos, no ha hecho falta utilizar la capa vectorial BasinsVector, aunque si dispusiéramos de
ella siempre podríamos PEGARLE las estadísticas mediante una unión por el campo común ( zone
de Estadísticas con DN de BasinsVector), que es lo que vamos a realizar ahora:
Esto lo podemos hacer con el algoritmo Join attributes by field value o Unir atributos por valor de
campo de QGIS.
Para realizar una unión de dos tablas por un campo de atributos, estos demás de representar los
mismos valores, generalmente tienen que ser del mismo tipo. Quizás puedas tener aquí un pequeño
problema y es que en la tabla de la imagen superior vemos que el campo zone es de tipo decimal,
pero el campo DN de la tabla BasinsVector es de tipo entero.
48
MÓDULO 9. La guía de procesamiento de QGIS
Si al realizar la unión ves que no ha funcionado (como nos ha pasado a nosotros), utiliza la calculadora
de campos sobre la capa Estadísticas para añadir un nuevo campo de nombre ZoneInt de tipo
entero y copia en el los valores del campo Zone
Como último paso realizamos la unión de las dos tablas por dicho campo común. Se creará una nueva
capa.
Carga el proyecto con los datos de la lección (proyecto modeler_twi.qgs en processing >
example11 ), que contiene solo una capa de MDE
Este algoritmo necesita dos entradas obligatorias: Una capa de pendientes (con valores en radianes) y
otra de área de captación (catchment area).
Los datos para esta lección contiene sólo un MDE, por lo que no tiene ninguna de las capas de entrada
requeridas. Sin embargo, sabemos cómo calcular ambas desde el MDE, como ya hemos visto
anteriormente. Vamos a calcular esas capas y luego a usarlas para el algoritmo TWI.
Aquí están los cuadros de diálogo de los parámetros que se deben utilizar para el cálculo de las 2 capas
intermedias. Para el cálculo de la pendiente utilizaremos también SAGA aunque podríamos haber
utilizado GDAL.
Los parámetros para el algoritmo TWI quedarán (Topographic wetness index de SAGA):
Lo que vamos a tratar de hacer ahora es crear un algoritmo que calcule el TWI de un MDE en un solo
paso.
Eso ahorrará trabajo en caso de que más adelante tengamos que calcular una capa TWI de otro DEM,
ya que vamos a necesitar sólo un solo paso para hacerlo en lugar de los 3 de más arriba.
Todos los procesos que necesitamos se encuentran en la caja de herramientas, así que lo que tenemos
que hacer es definir el flujo de trabajo para modelarlos. Aquí es donde el modelador gráfico entra en
juego.
Necesitamos dos cosas para crear el modelo: configurar las capas de entrada y definir el algoritmo que
se necesita. Ambas se logran añadiendo elementos desde el panel de la izquierda (pestañas de
entradas y algoritmos) a la ventana del modelador de la derecha.
Haz doble clic en la entrada de Raster layer para definir la entrada de nuestro algoritmo. Le
llamaremos DEM , ya que esperamos que contenga la capa ráster del MDE:
51
MÓDULO 9. La guía de procesamiento de QGIS
Ahora vamos a pasar a la pestaña de algoritmos. El primer algoritmo vamos a ejecutar es Slope,
aspect, curvature de SAGA.
Este diálogo es muy similar a la que encontrábamos cuando se ejecutaba el algoritmo de la caja de
herramientas, pero los elementos (capas) que se pueden utilizar como valores de los parámetros NO
se toman del proyecto de QGIS actual, sino del propio modelo. Además, verás que no existen las
típicas opciones de “Abrir el archivo de salida después de ejecutar el algoritmo”.
Eso significa que, en este caso, no vamos a tener todas las capas ráster de nuestro proyecto para
definir el valor de Elevation, sino sólo las capas que se corresponden con las entradas que se definen
en nuestro modelo. Como hemos añadido una sola entrada ráster llamada DEM , ésta será la que
veamos en la lista correspondiente al parámetro de elevación.
52
MÓDULO 9. La guía de procesamiento de QGIS
La salida generada por un algoritmo se maneja un poco diferente cuando el algoritmo se utiliza como
parte de un modelo. En lugar de seleccionar la ruta de archivo en el que desea guardar cada salida,
sólo hay que especificar si la salida es un resultado intermedio (temporal que desaparecerá tras ejecutar
el modelo) o quedará grabado en el disco tras su ejecución.
En este caso, todas las capas producidas por este algoritmo son intermedias. Sólo usaremos una de
ellas (la capa de pendiente), pero no queremos que la mantenga, ya que sólo la necesitamos para
calcular la capa TWI, que es el resultado final que se quiere obtener.
Cuando las capas no son un resultado final, sólo hay que dejar el campo correspondiente en blanco:
De lo contrario, tendrás que introducir un nombre que se utilizará para identificar la capa en el diálogo
de parámetros que se mostrará cuando se ejecuta el modelo posterior.
Tras cambiar las unidades a radianes y seleccionar la entrada DEM, presiona Aceptar. El
modelador presentará el siguiente aspecto:
Fíjate como si haces clic en el botón + de la salida (out) del algoritmo aparecen todas las capas
intermedias que genera.
Como último paso añade el algoritmo Topographic wetness index de SAGA con los
siguientes parámetros:
En este caso, no vamos a usar el DEM como entrada,
sino las capas de pendiente y área de captación que
se calculan con los algoritmos que hemos añadido
anteriormente.
A medida que se agregan nuevos algoritmos, las
salidas que producen están disponibles para
cualquier otro algoritmo del modelo. El vincular
estas entradas y salidas entre los algoritmos crea el
flujo de trabajo.
Ahora nuestro modelo está terminado y que debe tener este aspecto:
Introduce un nombre (p. ej.: TWI from DEM ) y un nombre de grupo (p. ej: My Models )
en la parte superior de la ventana del modelo, y luego haz clic en el botón de guardar.
El modelo se puede guardar en cualquier carpeta que se quiera y abrirlo más adelante, pero si se
guarda en la carpeta de los modelos por defecto de QGIS (que es la carpeta que aparece cuando por
defecto con el diálogo de archivo de salvar), entonces este modelo también estará disponible en la caja
de herramientas de QGIS.
El directorio por defecto de los modelos de QGIS dependerá del SO que estés utilizando, pero en
general se almacenará en la carpeta del usuario dentro de una subcarpeta. En MS Windows la
subcarpeta dentro de la carpeta de usuario es:
…\ AppData\Roaming\QGIS\QGIS3\profiles\default\processing\models
Ahora cierra el diálogo del modelador y vete a la caja de herramientas de procesado y busca
tu nuevo algoritmo.
Puedes utilizar al algoritmo como otro algoritmo cualquiera. Si quieres cambiar algún parámetro puedes
volver al modelador, abrir el algoritmo de nuevo, y hacer clic derecho sobre cualquier algoritmo para
cambiar algún valor.
Guarda el modelo en el directorio por defecto de QGIS para los modelos, con el nombre
watershedfromdem , de esta forma aparecerá en la caja de procesos.
Prueba a ejecutar el modelo con la capa DEM, obtendrás una capa vectorial igual que el apartado
12.15 pero sin tanto esfuerzo!. Ten paciencia, SAGA es bastante lento, tardará varios minutos.
56
MÓDULO 9. La guía de procesamiento de QGIS
Este modelo contiene todos los pasos necesarios para completar los cálculos, sin embargo solo tiene
una entrada: el DEM . Eso significa que el umbral initiation Threshold para la definición del
canal utiliza un valor fijo, lo que hace el modelo no sea tan útil como podría ser. Eso no es un problema,
ya que podemos editar el modelo y eso es exactamente lo que vamos a hacer:
Edita el modelo anterior y Cambia también el nombre del modelo a: Watershed from DEM
with threshold
Guárdalo también con otro nombre (p. ej.: watershedfromdemwiththreshold ) para así
poder editarlo y no borrar el anterior por si tenemos algún problema.
En primer lugar, vamos a añadir una entrada numérica. Será una entrada numérica que el usuario de
nuestro algoritmo utilizará como parámetro de entrada.
Haz clic en el panel de Parámetros > Entradas, en el item Número, y verás el diálogo
correspondiente. Rellena con los siguientes valores. Valor por defecto (omisión) igual a
1000000 (1 millón). Presiona Aceptar.
Para utilizar dicho parámetro, edita el algoritmo Channel network de tu modelo y cambia el valor
del parámetro Initiation Threshold de 10.000.000 a Threshold for channel
definition .
Realiza una captura de pantalla del modelador de QGIS donde se vea este último modelo creado.
Pega la imagen en la plantilla de resultados
Ahora tendremos dos modelos, uno sin parámetro de umbral y este último con parámetro de umbral:
Ejecuta varias veces tu modelo Watershed from DEM with threshold con la capa dem25
y con diferentes umbrales como 1 millón, 2 millones, 3 millones, etc.
Realiza varias capturas de pantalla de las subcuencas obtenidas con diferentes umbrales como la
imagen inferior. Pega la imagen en la plantilla de resultados
Para esta lección, vamos a modificar el modelo hidrológico que creamos en el capítulo anterior, para
automatizar el cálculo de un valor de umbral válido y no tener que pedir al usuario que introduzca uno.
Este valor umbral lo extraeremos de la capa de la zona de captación (Catchment Area), a partir de un
análisis estadístico simple.
Edita el modelo anterior y Cambia también el nombre del modelo a: Watershed from DEM
with automatic threshold
Esto generará un conjunto de valores estadísticos que ahora estarán disponibles para todos los campos
numéricos en otros algoritmos.
Edita el algoritmo Channel network para modificarlo, como hicimos en la última lección. Ahora verás
que tienes otras opciones (elige Usar la salida del algoritmo ) aparte de la entrada numérica
en la casilla de Initiation Threshold como Valor mínimo del algoritmo ‘Raster layer statistics’, etc.
59
MÓDULO 9. La guía de procesamiento de QGIS
Sin embargo, ninguno de estos valores es adecuado para ser utilizado como un umbral válido, ya que
se crearían redes de canales no muy realistas. Podemos, en cambio, obtener algún parámetro nuevo
basado en ellos, para obtener un mejor resultado. Por ejemplo, podemos utilizar la media más 2 veces
la desviación estándar (µ + 2σ).
Antes de aplicar esta expresión vamos a cambiar el nombre al algoritmo Estadísticas de capa ráster
a un nombre más sencillo como rasterstatistics. Siempre es mejor que no tenga acentos ni espacios
para usarlo en el cálculo de la expresión.
Ya hemos creado algunos modelos, y en esta lección vamos a ver cómo podemos combinarlos en único
modelo más grande. Un modelo se comporta como cualquier otro algoritmo, lo que significa que puedes
agregar un modelo que ya has creado como parte de otro.
En este caso, vamos a ampliar nuestro modelo hidrológico, añadiendo el valor medio TWI en cada
una de las cuencas que genera como resultado. Para hacer eso, tenemos que calcular el TWI y calcular
las estadísticas. Como ya hemos creado un modelo para calcular TWI de un DEM (modelo al que
anteriormente llamamos TWI from DEM ), es una buena idea volver a usar ese.
Vamos a empezar con el modelo se utilizó como punto de partida de la última lección, es decir,
Watershed from DEM with threshold.
Edita el modelo Watershed from DEM with threshold y Cambia su nombre a: TWI
by Watershed
Guárdalo con otro nombre (p. ej.: twibywatershed ) para así poder editarlo y no borrar el
anterior por si tenemos algún problema.
Añade en primer lugar el algoritmo TWI from DEM al modelo TWI by Watershed. Para
que esté disponible deberíamos haber guardado dicho modelo en la carpeta de los modelos
por defecto de QGIS como se ha comentado anteriormente.
61
MÓDULO 9. La guía de procesamiento de QGIS
Ahora tenemos una capa TWI que podemos utilizar junto con la capa de las cuencas hidrográficas de
vectores, para generar una nueva que contenga los valores de la TWI correspondientes a cada cuenca.
Este cálculo se realiza utilizando el algoritmo Estadísticas de Zona (Zonal Statistics) de QGIS que
ya hemos utilizado antes, aunque tenemos un problema, y es que dicho algoritmo no crea un nuevo
resultado (nueva capa) sino que agrega campos a la capa vectorizada. Preferimos en este caso un
algoritmo que cree una nueva capa así que vamos a utilizar el algoritmo Raster statistics for polygons
de SAGA.
Añade el algoritmo Raster statistics for polygons de SAGA a tu modelo y rellénalo con las
capas mencionadas anteriormente como entrada.
En Grids selecciona ‘ TWI’ from algorithm TWI from DEM . En Polygons la capa de
zonas.
Deja todas las estadísticas por defecto
Por último nos quedará eliminar el resultado final del algoritmo Polygonize (raster to polygon),
resultado que fue originalmente nuestro resultado final, pero ahora sólo se quiere como un resultado
intermedio.
62
MÓDULO 9. La guía de procesamiento de QGIS
Como puede ver, el uso de un modelo en otro modelo es nada especial, y se puede añadir al igual que
se agrega otro algoritmo, siempre y cuando el modelo se guarde en la carpeta de modelos y esté
disponible en la caja de herramientas.
Guarda el algoritmo y pruébalo con la capa dem25 de los ejercicios anteriores (utiliza un umbral
de 5 millones):
Realiza una de pantalla donde se vea la nueva capa creada y su tabla de atributos. Pega la imagen
en la plantilla de resultados
63
MÓDULO 9. La guía de procesamiento de QGIS
12.20 La interpolación
Resumen
En este capítulo se muestra cómo interpolar datos de puntos, y se mostrará otro ejemplo real de la
realización de análisis espacial
En esta lección, vamos a interpolar datos de puntos (datos discretos) para obtener una capa ráster
(datos continuos). Antes de hacerlo, vamos a tener preparar un poco los datos, y después de la
interpolación vamos a añadir algo de procesamiento adicional para modificar la capa resultante, así que
vamos a tener un flujo de análisis completo.
Carga el proyecto con los datos de la lección (proyecto interpolation.qgs en processing >
example13 ), que contiene dos capas vectoriales, una de puntos y otra de polígonos con la
extensión de la zona, ambas en el SRC EPSG:32755
Los datos se corresponden con datos de cosecha, como el producido por una cosechadora moderna,
y vamos a utilizarlo para conseguir una capa ráster de productividad de los cultivos.
No vamos a realizar ningún análisis espacial con esta capa, solo la vamos a utilizar como una capa de
fondo para identificar fácilmente las áreas más productivas y también aquellas áreas en las que la
productividad se puede mejorar.
Lo primero que debe hacer es limpiar la capa, ya que contiene puntos redundantes. Estos son causados
por el movimiento de la cosechadora, en lugares en los que tiene que hacer un giro o se cambia su
velocidad por alguna razón.
El algoritmo Points filter de SAGA será útil para esto. Lo vamos a utilizar dos veces para eliminar los
puntos que se pueden considerar valores extremos tanto en la parte alto como baja de la distribución.
Primero, ejecuta el algoritmo con los valores de parámetros de la imagen inferior izquierda.
La capa resultante es una capa de tipo ráster, pero faltan datos en algunas celdas, ya que
sólo tienen valores válidos aquellas celdas que contenían un punto de la capa vectorial, y un
valor sin datos en todas los demás. Para llenar estos valores sin datos, podemos utilizar el
algoritmo Close gaps de SAGA.
Para restringir el área cubierta por los datos sólo a la región en la que se midió el rendimiento del cultivo,
vamos a recortar la capa ráster Result (tu capa podría llamarse diferente) con la capa de límites
proporcionada limits utilizando el algoritmo Clip raster with polygon de SAGA.
El resultado final aplicando una rampa de color para su visualización será algo como:
Realiza una de pantalla similar a la imagen superior. Pega la imagen en la plantilla de resultados
67
MÓDULO 9. La guía de procesamiento de QGIS
La interpolación es una técnica común, y puede usarse para demostrar varias técnicas que se pueden
aplicar utilizando el marco de procesamiento de QGIS. Esta lección utiliza algunos algoritmos de
interpolación que ya fueron introducidos, pero con un enfoque diferente.
Los datos para esta lección contienen también una capa de puntos, en este caso con datos de
elevación.
Carga el proyecto con los datos de la lección (proyecto interpolation_cross.qgs en
processing > example14 ).
En primer lugar, tenemos que rasterizar la capa de puntos y llenar rellenar las celdas que no tengan
datos.
Antes vamos a extraer un 10% de los puntos de la capa que utilizaremos para realizar alguna
comprobación tras la interpolación. De esta forma, vamos a realizar la interpolación con solo el 90% de
los puntos originales.
Para ello, podríamos utilizar el algoritmo Split Shapes layer randomly de SAGA, que ya hemos
utilizado en una lección anterior, pero hay una mejor manera de hacer eso, sin tener que crear ninguna
nueva capa intermedia que consiste en únicamente realizar una selección de features.
Para ello vamos a seleccionar solo los puntos que queremos usar para la interpolación (90%) y a
continuación ejecutaremos el algoritmo de interpolación.
Para la selección vamos a utilizar el algoritmo Selección aleatoria o Random Selection de
QGIS. Ejecútalo con los siguientes parámetros:
En la casilla de Search Range elige [0] search radius (local) y en search Radius
elige 20000 .
En el tamaño de la celda de salida (cellsize) es de 100 m y deja los demás parámetros por
defecto.
68
MÓDULO 9. La guía de procesamiento de QGIS
Presiona Ejecutar y renombra la capa de salida en el proyecto de QGIS con el nombre IDW.
Para comprobar la calidad de la interpolación, ahora podemos utilizar los puntos que no están
seleccionados. En cada uno de esos puntos, conocemos la elevación real (el valor en la capa de
puntos) y la elevación interpolada (el valor en la capa ráster recién creada). Por tanto, Podemos
comparar los dos calculando las diferencias entre esos valores.
Ya que vamos a utilizar los puntos que no sean seleccionados, primero, vamos a invertir la
selección. Abre la tabla de atributos de la capa points y presiona el botón de invertir la selección
. Ahora tendremos seleccionados solo el 10% de los puntos, puntos que no han intervenido
en la creación del ráster.
69
MÓDULO 9. La guía de procesamiento de QGIS
Ahora amos a añadir un nuevo campo a la capa points que contendrá el valor interpolado del punto
para más adelante poder restar el valor real del interpolado para realizar una estimación del error.
Obtendremos una nueva capa Result con varias columnas, la columna VALUE con el valor original
del punto (el valor real) y el campo TARGET_OUT con el valor preveniente del ráster interpolado (el
valor estimado). Podremos comprar ambos valores para cuantificar la calidad de nuestra interpolación.
Para cuantificar esta comparación de los dos valores, vamos a calcular el error de en cada uno de los
puntos como la diferencia entre VALUE (valor verdadero) y TARGET_OUT (valor estimado).
70
MÓDULO 9. La guía de procesamiento de QGIS
Ejecuta para ello el algoritmo Field Calculator o Calculadora de campos de QGIS. Este
algoritmo es igual que la típica calculadora de campos de QGIS pero como salida creará una
nueva capa, en lugar de actualizar la capa existente.
Nota
Podemos sacar importantes conclusiones como que la media de los errores es 0.66 m luego la
superficie estimada digamos que está un poco subestimada, ya que está como media 0.66 metros por
debajo de la superficie real.
Y la otra conclusión es la desviación típica que es de 11.5 m y nos da una idea clara del error de los
puntos estimados, ya que coincide prácticamente con el error medio cuadrático (RMS).
71
MÓDULO 9. La guía de procesamiento de QGIS
Se pide al alumno que repita el procedimiento para otros tipos de interpolaciones. Para ello, sigue en
orden los pasos que se detallan a continuación:
Selecciona de nuevo la selección inversa de la capa points, para tener otra vez el 90% de
los puntos seleccionados.
Para todos los métodos de interpolación, acuérdate de poner un tamaño de celda de 100m y
de marcar la opción de solo los objetos seleccionados .
Selecciona de nuevo la selección inversa de la capa points, para tener otra vez el 10% de
los puntos seleccionados para hacer el control.
Repite tres veces el procedimiento de los algoritmos Add raster values to points y Field
Calculator para crear 3 capas con los valores estimados en cada punto y crea estadísticos
de las tres capas. Acuérdate de marcar la opción de solo en los objetos seleccionados.
También es interesante tratar de interpolar la capa de puntos que contiene la columna error por
dicho campo, para visualizar de forma gráfica en qué partes de la superficie se comete más error. Por
ejemplo, la imagen inferior muestra los errores de la interpolación por Cubic Splines.
72
MÓDULO 9. La guía de procesamiento de QGIS
Ya conocemos el modelador gráfico, que es una forma de automatizar tareas de procesamiento. Sin
embargo, en algunas situaciones, el modelador puede que no sea lo que necesitemos para automatizar
una tarea dada. Vamos a ver una de estas situaciones y cómo resolverlo fácilmente utilizando una
funcionalidad diferente: la ejecución iterativa de algoritmos.
Carga el proyecto con los datos de la lección (proyecto iterative.qgs en processing >
example15 ). Debe tener un aspecto como este:
Reconocerás nuestro DEM utilizado en los los capítulos anteriores y las cuencas extraídas. Imagina
que necesitas cortar el DEM en varias capas más pequeñas, cada una de ellas contiene sólo los datos
de elevación correspondientes a una sola cuenca. Eso es útil si más adelante deseas calcular algunos
parámetros relacionados con cada cuenca, como su elevación media.
Para recortar el DEM por una sólo una sola cuenca, primero hay que seleccionar la cuenca
deseada. Selecciona cualquier cuenca de la capa watersheds.
Sólo el polígono seleccionado se utilizará para recortar la capa ráster. Ejecuta el algoritmo Clip
raster with polygon de SAGA con la opción de objetos seleccionados solamente
marcada:
Hacer esto para todas las cuencas producirá el resultado que estamos buscando, pero es demasiado
repetitivo. En su lugar, vamos a ver cómo automatizar esta rutina.
Primero elimina la selección anterior de la capa watersheds, por lo que todos los polígonos se utilicen
de nuevo.
73
MÓDULO 9. La guía de procesamiento de QGIS
Ahora abre el algoritmo Clip raster with polygon y selecciona las mismas entradas que
antes, pero esta vez haz clic sobre el botón que se encuentra a la derecha de la capa
vectorial de entrada, donde se ha seleccionado la capa de cuencas.
Ejecuta el algoritmo.
Este botón hará que la capa de entrada seleccionada sea dividida en tantas capas como features
contenga, cada una de esas capas contendrá un solo polígono. De esta forma, el algoritmo se ejecuta
una vez para cada una de esas capas. El resultado será varias capas ráster con los recortes.
Aquí está el resultado que se obtendrá si se ejecuta el algoritmo de recorte como se ha explicado.
Para cada capa, la paleta de color blanco y negro, (o cualquier paleta que esté utilizando), se ajusta de
manera diferente, desde valores un mínimo a sus valores máximos. Esa es la razón por el cual se
pueden ver las diferentes piezas y los colores no parecen coincidir en la frontera entre las capas. Los
valores, sin embargo, sí encajan.
Si introduce un nombre de archivo de salida, los archivos resultantes serán nombrados utilizando ese
nombre de archivo y un número correspondiente para cada iteración como sufijo.
74
MÓDULO 9. La guía de procesamiento de QGIS
Crea un nuevo modelo y ponle el nombre: Clipping And Histogram . Escribe como grupo de
algoritmos My Models como en los ejemplos anteriores.
El modelo debe tener este aspecto (deja todos los parámetros del algoritmo Histogram Surface
de SAGA con el valor por defecto, excepto el parámetro Grid y el parámetro del resultado de
salida: Histograma.
El algoritmo se ejecutará varias veces, y se creará los histogramas de superficie correspondientes que
se añadirán al proyecto de QGIS.
Realiza una de pantalla similar a la imagen inferior donde aparezca alguna de las tablas obtenida.
Pega la imagen en la plantilla de resultados
Algunas veces un algoritmo dado tiene que ser ejecutado repetidamente con diferentes entradas. Esto
es, por ejemplo, el caso cuando un conjunto de archivos de entrada tienen que ser convertidos de un
formato a otro, o cuando varias capas en una proyección dada deben ser convertidas a otra.
76
MÓDULO 9. La guía de procesamiento de QGIS
Crea un nuevo proyecto en QGIS. Los datos a utilizar en esta lección están formados por un
conjunto de tres archivos shape (en processing > example16 ), pero no hay un proyecto
QGIS.
Esto es porque, cuando el algoritmo se ejecuta como un proceso por lote, la capa de entrada
se puede seleccionar ya sea desde el proyecto QGIS actual o desde los archivos. Eso hace
que sea más fácil procesar grandes cantidades de capas, como por ejemplo, todas las capas
en una carpeta determinada
Cada fila de la tabla del diálogo de proceso por lotes representa una sola ejecución del algoritmo. Las
celdas en una fila corresponden a parámetros necesarios por el algoritmo.
Definir el proceso por lotes consiste en rellenar la tabla con los valores correspondientes, y el diálogo
en sí contiene varias herramientas para hacer esta tarea más fácil.
Vamos a empezar llenando los campos de uno en uno. La primera columna para rellenar es la Capa
de entrada. En lugar de introducir los nombres de cada una de las capas que queremos procesar,
puede seleccionar todas ellos y dejar que el diálogo ponga uno en cada fila.
Si seleccionamos más capas, nuevas filas se añadirán automáticamente. Si desea llenar las entradas
manualmente, se puede añadir más más filas utilizando el botón de Añadir fila.
77
MÓDULO 9. La guía de procesamiento de QGIS
Vamos a convertir todas estas capas al SRC EPSG:23029 , así que tenemos que seleccionar ese SRC
en el segundo campo ( SRC objetivo ). Queremos lo mismo en todas las filas, pero no tenemos que
repetir el procedimiento para cada fila.
Para ello, establece el SRC EPSG:23029 para la primera fila (la fila de la parte superior)
con el botón
A continuación haz clic en Autorellenar y elige Rellenar hacia abajo . Eso hace que
todas las celdas de la columna se llenen con el valor de la celda superior.
Finamente, tenemos que seleccionar un archivo de salida para cada ejecución, que contendrá la capa
reproyectada correspondiente. Una vez más, vamos a hacerlo sólo para el primer registro.
Por último, marca la opción Cargar capas al completar debajo de la tabla. De esta manear,
puedes ver los resultados cargados en QGIS automáticamente en este caso.
Haz clic en Ejecutar y el proceso por lote será ejecutado. Si todo ha ocurrido bien, todas las
capas se han procesado y se han creado 3 nuevas capas.
78
MÓDULO 9. La guía de procesamiento de QGIS
Los modelos se comportan igual que cualquier otro algoritmo, y por tanto se pueden utilizar en la interfaz
de procesamiento por lotes. Para demostrarlo, vamos a hacer uso de un modelo creado anteriormente
que era Watershed from DEM with threshold
Ejecuta este modelo pero con lotes. El diálogo de procesamiento por lotes de este algoritmo será:
Selecciona el archivo DEM correspondiente a esta lección (p. ej.: fichero dem25.tif en
example12 ). Se creará una primera fila en la tabla con la capa de entrada de dem25.
Vamos a querer ejecutar tres veces el algoritmo, así que añade dos filas más a la tabla con el
botón
Haz clic en Autorellenar y selecciona rellenar hacia abajo como has hecho antes.
A continuación, introduce tres valores de umbral diferentes, p. ej.: 1000000, 100000 y 10000.
79
MÓDULO 9. La guía de procesamiento de QGIS
Para ello, elige un fichero shp ( watershed.shp ) en una carpeta y selecciona luego Rellenar
con números para añadir un número correlativo al final del nombre del fichero.
Ahora mismo es un buen momento para que calcules de forma aproximada las horas que has dedicado
de esfuerzo a la realización completa de este módulo (clases de teoría, clases de laboratorio, tiempo
dedicado en casa para finalizar las prácticas, etc.) y contestes al sondeo “Horas de dedicación del
módulo 9”.