Cómo ejecutar geoprocesos sin abrir un programa SIG

En muchas ocasiones, tenemos que ejecutar geoprocesamientos sencillos como crear un buffer o reproyectar un shapefile que no necesariamente requieren de abrir un programa SIG o tener conocimientos de programación para ello.

La mayoría de los geoprocesamientos que usamos a diario pueden ejecutarse desde la línea de comandos de Windows usando GDAL/OGR. Esto resulta de gran utilidad a la hora de crear “batch processing” sin calentarnos la cabeza demasiado.

QUe es “GDAL/OGR”?

Para simplificar, podemos decir que GDAL/OGR es un conjunto de herramientas gratuitas geoespaciales para trabajar con datos ráster (GDAL) y vectoriales (OGR).

No tenemos que pensar que GDAL/OGR es algo diferente a los software GIS. En realidad la mayoría de los software GIS del mercado usan librerías GDAL/OGR, desde QGIS hasta ArcGIS. Para ejecutar OGR/GDAL desde la línea de comandos, necesitas tenerlo instalado en tu ordenador. Cualquiera de las siguientes instalaciones te podría servir:

Una vez conseguido esto, solo necesitaras ejecutar el programa desde la línea de comandos.

“OGR2OGR” desde la linea de comandos

Vamos a ver un ejemplo real. En este caso, vamos a crear un buffer usando ogr2ogr desde la línea de comandos. Recuerda que OGR se usa para geoprocesamientos vectoriales, por tanto no sirve para trabajar directamente con datos ráster.

Para el ejemplo, vamos a usar un SHP descargado del PNOA con la Cuenca Hidrográfica del Segura. Pero podrías usar el que desees:

Usando el SHP de la imagen superior, vamos a crear una serie de buffers y vamos a aprender a leer la tabla de atributos y usar sus categorías.

La sintaxis básica de cualquier comando OGR2OGR sería:

ogr2ogr -f “FORMATO” -sql “SQL” -dialect SQLite “Output.shp” “Input.shp”

Seguir el orden de la sintaxis es importante. Cuando usamos OGR2OGR, el archivo de salida debe nombrarse antes que el archivo de entrada, al contrario que en la mayoría de los programas que podemos ejecutar desde símbolo de sistema.

Crear un buffer con “st_buffer”

En el ejemplo que nos ocupa, vamos a usar la función ST_Buffer de PostGIS sobre el campo de geometría de nuestro SHP para crear el buffer. El objetivo es crear un buffer de 10 metros alrededor de la línea que representa nuestro cauce. El archivo de salida queremos que sea también en formato SHP:

  • Invocamos OGR2OGR desde nuestra instalación de QGIS: “C:\Program Files\QGIS 3.18\bin\ogr2ogr.exe”
  • Para definir el archivo de salida como SHP: -f “ESRI Shapefile”
  • La sintaxis SQL sería: -sql “select ST_Buffer(geometry, 10) from hi_redsecuencia_l_ES070”, donde hi_redsecuencia_l_ES070 es el nombre del SHP.
  • Por último, copiamos la ruta donde queremos el archivo de salida y la ruta del archivo de entrada.

Todo junto quedaría del siguiente modo:

“C:\Program Files\QGIS 3.18\bin\ogr2ogr.exe” -f “ESRI Shapefile” -sql “select ST_Buffer(geometry, 10) from hi_redsecuencia_l_ES070” -dialect SQLite “C:\Users\javi\Downloads\hi_redsecuencia_l_ES070_buf10m.shp” “C:\Users\javi\Downloads\hi_redsecuencia_l_ES070.shp”

Para ejecutar el comando, abre una ventana de símbolo de sistema y copia la sentencia. Después presiona intro. Ahora es el momento de comprobar los resultados. Abrimos QGIS o cualquier otro programa SIG que tengas instalado en tu ordenador. Ahora arrastra el archivo original y el archivo de salida. ¿Qué ha ocurrido?

Buffer de un archivo lineal en grados

No hemos obtenido el resultado que esperábamos. Esto se debe a que el archivo original se encuentra en WGS84, es decir, sus unidades están en grados decimales y no en metros. Para realizar la transformación a ETRS89 UTM zona 30 y poder operar en metros, tenemos dos opciones.

  • Realizar la transformación con QGIS
  • Realizar la transformación usando OGR2OGR al mismo tiempo que creamos el buffer

cambios de proyección: “ST_Transform”

Vamos a usar la segunda opción. Todo lo que necesitas es conocer el código EPSG de tu archivo de tu archivo de salida. Observa en el comando inferior la parte en negrita. Vamos a aplicar ST_Transform sobre la geometría al mismo tiempo que usamos ST_Buffer:

“C:\Program Files\QGIS 3.18\bin\ogr2ogr.exe” -f “ESRI Shapefile” -sql “select ST_Buffer(st_transform(geometry, 25830), 10) from hi_redsecuencia_l_ES070″ -dialect SQLite “C:\Users\javi\Downloads\hi_redsecuencia_l_ES070_25830_buf10m.shp” “C:\Users\javi\Downloads\hi_redsecuencia_l_ES070.shp

Buffer del shapefile que contiene la cuenca hidrográfica del segura

Ahora si hemos obtenido los resultados esperados. El buffer está ahora en metros y nuestro archivo de salida se ha transformado de WGS84 a ETRS89 Zona 30.

Vamos a ir un poco mas allá. Nuestro shapefile contiene una serie de cauces, que son ríos, ramblas, acequias, etc. ¿Podemos crear un buffer en ETRS89 solamente para los ríos?

“ogrinfo” para leer atributos de un Shp

Para ellos lo único que tenemos que hacer es comprobar si la categoría “Ríos” existe en nuestro SHP. Puedes leer la tabla de atributos desde QGIS o bien, puedes hacerlo usando OGRINFO.

Para esta segunda opción, usar el siguiente comando que te ayudará a leer todas las columnas (usamos el *) de una fila de la tabla de atributos (por ello usamos “limit 1”):

“C:\Program Files\QGIS 3.18\bin\ogrinfo.exe” “C:\Users\anton\Downloads\hi_redsecuencia_l_ES070.shp” -dialect sqlite -sql “select * from hi_redsecuencia_l_ES070 limit 1

En este caso, no vamos a crear ningún archivo de salida. Solamente queremos que nos muestre en la consola de símbolo de sistema los atributos de un único elemento del SHP de entrada. Observa que uno de los atributos se llama “nombre”. Parece un buen candidato para contener los nombre de los ríos, ramblas, arroyos, etc., por lo que es posible que nos indique los ríos. Vamos a comprobarlo con el siguiente comando:

“C:\Program Files\QGIS 3.18\bin\ogrinfo.exe” “C:\Users\anton\Downloads\hi_redsecuencia_l_ES070.shp” -dialect sqlite -sql “select distinct(nombre) from hi_redsecuencia_l_ES070

Lo que estamos indicando en el comando superior es que nos muestre todos los elementos DISTINTOS de la tabla de atributos para la columna “NOMBRE”:

la cláusula “where”

El campo nombre contiene lo que buscamos. Vamos ahora a usarlo para filtrar todos los ríos de nuestra tabla de atributos. Vamos a crear un nuevo SHP solamente para los Ríos, con un buffer de 10 metros y para ellos vamos a buscar todos aquellos elementos de la tabla de atributos que contienen la palabra “Ríos” en alguna de su columna “NOMBRE” con “WHERE”:

“C:\Program Files\QGIS 3.18\bin\ogr2ogr.exe” -f “ESRI Shapefile” -sql “select ST_Buffer(st_transform(geometry, 25830), 10) from hi_redsecuencia_l_ES070 where nombre like ‘Río%'” -dialect SQLite “C:\Users\javi\Downloads\hi_redsecuencia_l_ES070_25830_buf10m_rios.shp” “C:\Users\javi\Downloads\hi_redsecuencia_l_ES070.shp” -progress

Buffer de 10 metros solo para los Ríos

El nuevo SHP creado será más pequeño que el buffer original, ya que contiene solamente los Ríos.

Por último, vamos a crear un buffer con distintas dimensiones acorde a su categoría. Por ejemplo, imagina que necesitas tener un polígono con los cauces donde los Ríos tengan 10m de buffer y las ramblas 5 metros. Para esto, podemos usar UNION dentro de nuestra sentencia SQL.

fusionar elementos con “union”

Lo único que necesitas hacer es crear un buffer para cada categoría repitiendo el comando SQL, una vez para Ríos y otra para las ramblas:

“C:\Program Files\QGIS 3.18\bin\ogr2ogr.exe” -f “ESRI Shapefile” -sql “select ST_Buffer(st_transform(geometry, 25830), 10) from hi_redsecuencia_l_ES070 where nombre like ‘Río%’ UNION select ST_Buffer(st_transform(geometry, 25830), 5) from hi_redsecuencia_l_ES070 where nombre like ‘Rambla%'” -dialect SQLite “C:\Users\anton\Downloads\hi_redsecuencia_l_ES070_25830_rios10m_y_ramblas5m.shp” “C:\Users\anton\Downloads\hi_redsecuencia_l_ES070.shp” -progress

Como resultado obtendrás un polígomo como el que se muestra a continuación:

Buffer 10 metros para Ríos y de 5 metros para la Ramblas

Conclusión

Como habrás podido comprobar, hemos sido capaces de crear distintos buffers a partir de un SHP usando OGR2OGR, sin necesidad de abrir un programa SIG.

Tener soltura con OGR2OGR te resultará muy útil en tu actividad profesional a la hora de crear scripts o concatenar procesos respetivos.

Hemos visto un ejemplo de cómo crear un buffer y transformar la proyección, pero OGR2OGR se puede usar también para:

  • Crear o modificar atributos
  • Transformar archivos (por ejemplo de SHP a SQLITE)
  • Importar y exportar datos a una base de datos
  • Realizar operaciones vectoriales (intersecciones, uniones, cambios de geometría, etc.)

Cómo convertir datos de OSM (Open Street Map) a Shapefile con QGIS

Los sistemas de información geográfica carecen de sentido si no disponemos de datos para trabajar con ellos. En muchas ocasiones, nos encontramos con que tenemos un proyecto o una idea y carecemos de fuentes de descarga de información para desarrollarla. Encontrar estas fuentes a veces resulta una actividad tediosa y fustraste.

En este post vamos a ver una manera de obtener datos en formato shapefile a partir de Open Street Map usando el complemento o plugin de QGIS llamado “OSMdownload”.

Antes de nada, si vas a realizar los pasos de este post, te recomiendo que le eches un vistazo a este otro post donde te explico cómo descargarte un complemento para QGIS llamado “Quick Terrain Services” que podrás usar para cargar mapas base en QGIS (entre ellos mapas base de OSM).

¿Qué es OSM?

OSM viene de las siglas en inglés “OpenStreetMap”. Se trata de un conjunto de datos open source del que se abastecen páginas web, aplicaciones móviles y distintos software (entre ellos QGIS).

OSM se mantiene gracias a una comunidad de personas dedicadas a la elbaoración de amapas que contribuye al mantenimiento y creación de todo tipo datos a lo largo del mundo, desde carrtereas y railes hasta el mapeo cafés o edificios públicos.

OSM Open Street Map Madrid
Ejemplo de vista de OSM en el Centro de Madrid

Descargar el complemento “OSMDownloader” para QGIS

El complemento OSMDownloader de QGIS es el que nos va a permitir descargar elementos en formato OSM a partir de Open Street Map. Como el resto de los complementos en QGIS, necesitamos acceder al menú de complementos para descargarlo, ya que no viene por defecto en nuestra instalación.

Para este ejemplo, vamos a usar QGIS 3.18 pero podrías usar cualquier otra versión que tengas instalada en tu ordenador. Dirígete al menú principal, en la parte superior y haz clic en complementos > administrar e instalar complementos.

Una vez que se abra la ventana de complementos, teclea “OSMdownload” en la barra de búsqueda y aségurate de que la opción “todos” está seleccionada. Después, haz clic en la parte inferior en “Instalar Complemento”

Gestor de complementos de QGIS

Una vez descargado el complementos, verás una herramienta nueva con forma de rectángulo en el menú principal, en la parte superior.

Herramienta para descargar datos de OSM mediante un rectángulo de selección

Usando OSMDOWNLOADER

Utilizar este complemento de QGIS es bastante sencillo. Para ello imaginemos que queremos obtener un callejero de la ciudad de Águilas. Los pasos serían:

  • Cargar un mapa base de OSM. En este caso, he obtado por usar el complemento de Quick Terrain Services
Cargar datos desde Quick Terrain Services
  • Buscar la zona que queremos descargar
  • Crear un AOI (área de interés) de la zona que queremos obtener datos usando OSMdownloader
AOI usando OSMDownloader
  • Seleccionar una carpeta de descarga. Observa que puedes marcar la casilla de “Load layer after download” para ver la información en QGIS sin necesidad de cargarla una vez descargada.
Selecciona una carpeta de descarga

Una vez descargados los datos, lo único que tenemos que hacer, es covertirlos a formato SHP. Para ello usa la herramienta de selección en QGIS y selecciona aquellos elementos que desees exportar como SHP (o cualquier otro formato!).

Datos descargados directamente de OSM

Cuando ya tengamos los elementos exportados en formato SHP, puedes recurrir a la simbología y superponerlos sobre Google Street Map para comprobar que todo es correcto. También puedes añadir un etiquetado con el nombre de las calles:

Callejero del centro de Aguilas (Murcia)

Como habras podido comprobar, es bastante sencillo obtener datasets de cualquier parte del mundo. Dependiendo del tamaño de la zona, el país o la ciudad, puede que tengas más o menos información disponible.

Por ejemplo, en este otro caso, he seleciconado una zona del Parque Natural de la Sierra de Guadarrama entre Madrid y Castilla León, y podemos ver que nos aparecen desde puntos de interés hasta senderos rurales:

Datos descargados de OSM de la Sierra de Guadarrama

Te animo a que trates de probar la herramienta en alguna zona de tu interés y así podrás comprobar qué datos tienes disponibles.

LiDAR PNOA

Como instalar el nuevo QGIS 3.18 con la funcionalidad de visualizar LiDAR

Durante el mes de Febrero, se ha lanzado una nueva versión de QGIS (3.18) con múltiples mejoras y extras, entre ellas la posibilidad de cargar nubes de puntos en formato LAZ o LAS directamente arrastrándolas a tu ventana de QGIS.

El programa utiliza librerías de entwine pdal combinadas con el software de QGIS para exprimir al máximo nuestros datos LiDAR. Por ahora se trata de una primera versión con escasa funcionalidad, pero es fácil imaginar su potencial unido a QGIS. El simple hecho de poder combinar vectores, rasters y nubes de puntos en la ventana de QGIS ya resulta de gran utilidad.

Sin embargo, parece que esta opción aun no está disponible para Windows cuando descargamos el instalador de QGIS directamente desde su página oficial. No obstante existe una solución temporal para esto que ha sido facilitada por Lutra Consulting, empresa que organizó el crowdfounding para incluir esta funcionalidad en QGIS, junto con North Road y Hobu.

Instalación

Para poder disfrutar por ahora de esta nueva funcionalidad, es necesario descargar el nuevo instalador de OSGEO4W que por ahora se encuentra en prueba. Pero ojo, si ya tienes OSGEO4W o QGIS instalado en tu ordenador y no deseas sobreescribir o modificar la instalación, entonces te recomiendo que a la hora de instalarlo, lo hagas en una ruta diferente.

Sigue los pasos para realizar la instalación. Durante el proceso no sólo podrás seleccionar la ruta de instalación si no que también podrás crear un acceso directo en el escritorio. La instalación puede tardar unos minutos y como con cualquier otro porgrama, es recomendable reiniciar el ordenador una vez finalizada.

Probando datos

Una vez hemos instalado QGIS 3.18, es el momento de ejecutar el programa. Para ello, dirígete a la ruta donde lo has instalado y busca la carpeta bin. Desde ella, busca el archivo ejecutable llamado “qgis-bin.exe” y haz doble clic en él. De esta manera te aseguras de ejecutar la versión que acabas de instalar y no otra versión que ya exista en tu PC.

Ahora simplemente arrastra una nube de puntos en formato LAS o LAZ a tu ventana de QGIS. Para este ejemplo, he descargado el bloque “PNOA_2016_MAD_426-4481_ORT-CLA-RGB.laz” a través del centro de descargas del CNIG.

Las nubes de puntos que descargamos del PNOA estan coloreadas usando ortofotos, por este motivo al cargarla se verá como en la siguiente captura de pantalla, coloreda por sus atributos RGB:

Bloque LiDAR visualizado en QGIS por RGB

Si lo deseas, puedes cargar también en QGIS una ortofoto que puedes conseguir del mismo buscador del CNIG y usarla como mapa base.

En QGIS, la nube de puntos se carga como otra capa cualquiera, es decir, como una capa vectorial o ráster. Por tanto, el sistema de coordenadas de referencia o su simbología se pueden modificar.

Para cambiar la simbología de la nube de puntos, haz doble clic en la capa LiDAR y busca la pestaña de simbología. Tendrás 4 opciones:

  • Extensión: Serían los límites del bloque
  • Atributos: Esta opción te permite mostrar la nube de puntos en base a sus campos escalares (intensidad, número de retorno, coordenadas, etc.
  • RGB: Si existe, es posible mostrar la nube de puntos por los colores con los que haya sido atribuída.
  • Clasificación: Generalmente, esta clasificación será responde a los estándares de la “American Society of Photogrametry and Remote Sensing

En este ejemplo he optado por colorear la nube de puntos en base a uno de sus atributos, en concreto la coordenada Z. Para ello simplemente selecciona “Attribute by Ramp” en las opciones de simbología y ha continuación, selecciona la opción de la coordenada Z. De forma automática se crea una rampa de colores en base al rango por alturas (en este caso alturas sobre el nivel del mar).

Nube de puntos superpuesta sobre Ortofoto. El LiDAR se muestra clasificado por alturas

Por el momento, no hay algoritmos nativos disponibles en QGIS 3.18 para modificar la nube de puntos o crear productos a partir de ella. Pero teniendo en cuenta que usa la librería de PDAL, es muy posible que próximas versiones incorporen distintas funcionalidades para generar, por ejemplo, modelos digitales del terreno a partir del LiDAR.

Mapas base en QGIS. Complemento Quick Map Services.

Los mapas base nos ayudan a crear un contexto en nuestros proyectos. Son una guía sobre la que crear o modificar nuestros archivos vectoriales y raster, además de ayudarnos a comprender mejor los datos con los que estamos trabajando.

Observa la imagen inferior, a la izquierda, tenemos un archivo vectorial de carreteras y a la derecha el mismo archivo con un mapa base satélite obtenido de Google. ¿Cuál te resulta más interesante?

Mapa de carreteras con y sin mapa base

En este post vamos a hablar de las ventajas del plugin Quick Map Services de QGIS para incorporar distintos mapas base.

Antes de comenzar con el complemento de Quick Map Services, es importante recordar que QGIS tiene sus propios proveedores y complementos de terceros para acceder a los servicios de mapas base. Los protocolos WMS y WMTS se implementan en el núcleo del programa.

Del mismo modo, es posible acceder a los mosaicos XYZ a través del controlador WMS escribiendo un archivo XML especial comprensible con GDAL. Sin embargo, esto no es conveniente, ya que se necesita recordar todas estas direcciones y lleva tiempo añadir los archivos. Puedes acceder a estos servicios desde el navegador, por defecto, deberías tener un callejero de Open Street Map:

Mapa base de OSM

La alternativa de la que se habla en este post es Quick Map Services. Un complemento para QGIS que te ayudará a disponer fácilmente de numerosos mapas base.

Quick Map Services

Este plugin o complemento de QGIS, desarrollado por NextGIS, es mi opción favorita a la hora de incorporar mapas base a nuestro workbench de QGIS. El complemento viene con mapas de numerosas fuentes:

  • Bing
  • Esri
  • Google
  • OSM
  • Y muchos más!

Sus principales ventajas son:

  • Incluye una lista de servicios que se van actualizando continuamente
  • Los mapas se añaden a nuestro proyecto con un solo clic
  • Es fácilmente ampliable agregando archivos ini

Para disfrutar de todos esos mapas, tienes que seguir los siguientes pasos:

  • Dirígete al menú complementos/plugins de QGIS
  • Desde la pestaña de “todos” busca “Quick Map Services”
  • Instala el complemento
  • Una vez instalado, verás que te aparece en el menú principal una bola del mundo con un símbolo + en su parte inferior derecha.
  • Haz clic en ella y después en “Settings”, “More services”, “Get Contributed Pack”
  • Ahora puedes disfrutar de todos estos mapas base:

Personalmente utilizo mucho las imágenes satélite de Google para dar contexto a mis proyectos. Pero también puedes disponer del típico mapa base de ESRI Gray Dark o de imágenes de Bing o incluso OSM.

Si de todos los mapas disponibles en el complemento, no encuentras uno que se ajuste a tus necesidades, siempre puedes probar suerte usando el buscador de Quick Map Services. Para ello, pincha de nuevo en el plugin y busca donde dice “Panel Search QMS” en la parte inferior. De forma alternativa, puedes pinchar en la bola del mundo con la lupa. Se abrirá una pestaña donde podrás incluir el nombre del mapa base que andas buscando.

Buscador QMS

Intenta utlizar paalabras clave como “water”, “earthquake”, “DEM”, etc. Por ejemplo, un mapa base muy interesante es éste elaborado por la NASA que te permite ver a nivel global la peligrosidad símismica medida por la velocidad punta de la onda en superficie:

mapa base de peligrosidad sísmica
Mapa base de peligrosidad sísmica

Observa que puedes combinar mapas base, por ejemplo en la imagen anterior, existe un mapa base de Google Satellite debajo del mapa base de peligrosidad sísmica.

Para terminar, os dejo con este mapa base un tanto vintage pero que me ha parecido muy interesante. Se trata de una imagen que emula un mapa pintado en acuarela. Para encontrarlo, simplemente escribe “water” en el buscador de “Search QMS” de tu complemento. Aparecerán además una serie de mapas base relacionados con el agua.

watercolor
Mapa base watercolor (acuarela)

Operador de consultas. Filtrando atributos en QGIS

El filtrado y selección de atributos es una operación muy común y poderosa en PostgreSQL que muchas veces nos pasa desapercibida en QGIS. Gracias a la herramienta de filtro de QGIS, podemos seleccionar aquellos elementos de una capa que deseemos, lo cual resulta de gran interés a la hora de trabajar con grandes archivos de datos.

Pero filtrar atributos, no es algo exclusivo de la tabla de atributos, también se puede utilizar a la hora de aplicar una simbología o una etiqueta especifica en aquellos elementos que deseemos.

A continuación, veremos algunos ejemplos. Puedes descargarte los datos que vamos a utilizar de la página del IGN. En este caso utilizaremos datos de la Región de Murcia, pero podrías descargar los que quisieras.

IGN
Centro de descargas (CNIG). Descarga de datos poblacionales.

Una vez descargados los datos, extrae los archivos shapefile de la carpeta comprimida y carga en QGIS el archivo SHP que se llama “areapoblacion_s.shp”.

A continuación haz clic derecho sobre la capa y pincha en “mostrar números de objetos espaciales”. Verás que aparece un número a la derecha del nombre de la capa que se corresponde con el total de campos de la tabla de atributos.

tabla de atributos
Tabla de atributos de la capa “areapoblación”. A la derecha del nombre de la capa, podemos ver el total de campos.

Constructor de consultas

Vamos ahora a filtrar datos usando el constructor de consultas de QGIS. Antes, vamos a duplicar la capa para ver las diferencias. Haz clic derecho en la capa y después en duplicar. En la capa duplicada, vuelve a hacer clic derecho y pincha en “mostrar números de objetos espaciales” y nuevamente clic derecho y “filtrar” para abrir el constructor de consultas.

constructor consultas
Constructor de consultas

El constructor de consultas se compone de distintas partes. En la parte superior, tenemos los campos de la tabla de atributos y sus valores. En la parte central, disponemos de los operadores mas comunes. En la ventana inferior, es donde escribiremos nuestra consulta. En esta versión de QGIS (3.16) podemos también guardar y cargar consultas.

Vamos a realizar una consulta que nos muestre únicamente campos donde el número de edificios sea superior a 500. La consulta sería: “numedif” > 500

Escribe la consulta en la parte inferior. Puedes hacer doble clic en el campo “numedif” y después hacer clic en “>” para que se vaya rellenando la consulta. Después escribe “500” o busca el valor en la ventana de valores. Finalmente haz clic en “probar” para asegurarte que todo ha ido bien. Si el resultado de la consulta es satisfactorio, haz clic en aceptar.

constructor consultas SQL
Consulta para encontrar aquellos campos con mas de 500 edificios

Hemos pasado de tener mas de 60.000 elementos a tener solamente 158, los que nos interesaban. Opcionalmente, cambia la simbología de la capa (por ejemplo para que tenga un color rojo) y ponla para que se muestre en primer lugar y así apreciar los cambios.

capas
Capa filtrada superpuesta

Pero, ¿Qué ocurre si queremos aplicar mas de un filtro simultáneamente?. A continuación vamos a filtrar los datos no solo por el numero de edificios sino también por el área de los polígonos. Queremos conocer las áreas con mas de 500 edificios y más de 500.000 metros cuadrado. Vuelve a abrir el constructor de consultas y construye la siguiente consulta:

“numedif” > 500 AND “area” > 500000

constructor consultas 2
Consulta para encontrar zonas con mas de 500 edificios y área superior a 500.000 metros cuadrados.

Observa ahora la siguiente consulta. Aparte de los filtros ya utilizados, queremos encontrar aquellas áreas que pertenecen a Cartagena o Alhama de Murcia y que además, cumples con los requisitos anteriores. Para ello construye la siguiente consulta:

“numedif” > 500 AND “area” > 500000 AND (“nombre” = ‘Cartagena’ OR “nombre” = ‘Alhama de Murcia’)

constructor consultas operador OR

Puedes pinchar en el campo “nombre” y en la parte de la derecha, escribir los valores de ese campo para encontrarlos más rápidamente. Tras hacer clic en probar, ahora tendremos solamente dos resultados, uno para Alhama y otro para Cartagena.

Observa los paréntesis. Al utilizar el operador “OR” después de otras consultas con el operador “AND” es importante que utilicemos los paréntesis, si no, podemos obtener resultados erróneos.

Quizás te haya llamado la atención que la parte entre paréntesis ocupa la mitad de la consulta, ya que se repita la parte “nombre” dos veces. Imagina que tuvieras que realizar la consulta para 10 áreas y tuvieras que escribir el campo “nombre” 10 veces. Quedaría una consulta muy larga. Para evitar esto, vamos a usar el operador “IN”. La misma consulta de antes quedaría como:

“numedif” > 500 AND “area” > 500000 AND “nombre” IN (‘Cartagena’, ‘Alhama de Murcia’)

constructor consultas operador IN
Usando el operador “IN”

Si por el contrario quisiéramos mostrar todos los campos salvo aquellos que pertenecen a Cartagena y Alhama de Murcia, usaríamos el operador “NOT IN”.

“numedif” > 500 AND “area” > 500000 AND “nombre” NOT IN (‘Cartagena’, ‘Alhama de Murcia’)

Si ahora exportamos la capa en la que hemos aplicado las consultas, podríamos guardar únicamente aquellos elementos que se encuentran filtrados. Del mismo modo, si ejecutamos algún algoritmo en dichas capas, los cambios sólo ocurren en los datos filtrados.

Operador de consultas para la simbología

Estas consultas nos sirven también no solo para la tabla de atributos si no también para el etiquetado de datos o incluso la simbología. Veamos un ejemplo para la simbología. Imagina que quieres mostrar todos las áreas que pertenecen a Murcia, Lorca y Cartagena en color verde y el resto sin color.

Para ello, simplemente dirígete a la ventana de propiedades de la capa y luego a simbología. En la parte superior haz clic en “categorizado” y después haz clic en el símbolo de épsilon para abrir el diálogo de expresiones. Copia la siguiente consulta:

simbologia
Diálogo de consultas desde la ventana de simbología

Después ha clic en “clasificar” y selecciona los colores que desees. El valor 1 corresponde para “True” es decir, aquellas zonas donde la consulta se vuelve verdadera y por tanto asignamos color verde:

Seleccionando los colores verdes para Lorca, Murcia y Cartagena.

Al volver al canvas de QGIS, obtendremos algo como lo que se muestra a continuación:

simbologia canvas qgis
Simbología generada a partir de expresión SQL.

Como ves, las expresiones SQL que podemos usar en el constructor de consultas, resultan tremendamente útiles. Nos ayudan a organizar nuestros datos e incluso crear simbología. Para mas información sobre el constructor de consultas, visita el siguiente enlace de QGIS.

Curso de introducción a ArcGIS Online

Este curso de 8 horas con numerosos vídeos, todos ellos colgados en Youtube, te ayudará a entender cómo funciona la plataforma ArcGIS Online, desde crear una cuenta hasta desarrollar tu primera aplicación.
10 vídeos en Youtube
8 horas de contenido
Numerosos ejercicios y ejemplos
Totalmente gratis

Sobre el curso y mi colaboración con GISCorps:

En 2018 tuve la oportunidad de trabajar en coloración con GISCorps para realizar este fantástico curso de ArcGIS Online donde aprenderás a crear una cuenta en AGOL, las distintas opciones de cuentas existentes, como alojar tus propias capas vectoriales y ráster en el servidor de ArcGIS, conectar tu ArcMAP con AGOL y publicar servicios, embeber tus mapas en tu pagina web y mucho más!

 

FONAFIFO es una institución gubernamental costarricense que proporciona pagos a los propietarios de tierras que celebran contratos con el gobierno para preservar las tierras forestales, practicar el manejo forestal sostenible, etc., a cambio de servicios ambientales. FONAFIFO buscó la ayuda de un voluntario de GISCorps capaz de crear vídeos de capacitación de ArcGIS Online (AGOL) en español. Antonio Javier Soto Molina (Javier Soto) fue seleccionado para este proyecto y recientemente completó la grabación de diez vídeos de capacitación. Dick Kotapish, otro voluntario de GISCorps que ayudó a FONAFIFO con un proyecto anterior, trabajó estrechamente con Javier en este proyecto.

Temario y enlaces a Youtube:

Todos los vídeos comienzan con una introducción donde se explica el contenido del vídeo. Esta introducción se ha realizado con un Story Map de la plataforma AGOL disponible en el siguiente enlace: http://arcg.is/011eK5
Todos los vídeos del curso se encuentran alojados en el siguiente enlace:
VÍDEO 1: Introducción a ArcGIS Online (AGOL) 8 min
  • En este vídeo te muestro las distintas cuentas existentes en AGOL
  • Así como los planes que más se pueden ajustar a tus necesidades.
VÍDEO 2: Cómo crear tu propia cuenta en ArcGIS Online 16 min
  • Aquí te ayudaré a crear tu cuenta de organizaciones y las prestaciones que tiene la misma.
  • Número de usuarios
  • Créditos
  • Almacenamiento
VÍDEO 3: Personalizar una cuenta de AGOL: 20 min
  • Una vez creada tu cuenta, haremos un tour por la misma y veremos las distintas opciones de personalización.
  • Cómo añadir una descripción y un logo
  • Invitar miembros, añadir usuarios y crear roles.
VÍDEO 4: Creando nuestro primer mapa 42 min
  • El siguiente vídeo te guiará en los pasos necesarios para crear tu primer mapa.
  • Añadir capas,
  • Cambiar simbología,
  • Personalizar ventanas emergentes,
  • Cambiar leyenda, guardar y compartir nuestro mapa.
  • También veremos como utilizar ArcGIS Online Assistant.
VÍDEO 5: Crear y compartir un mapa con información en vivo 41 min
  • Crear una capa con información que se actualiza.
  • Simbología con un icono personalizado.
  • Añadir capas en tiempo real.
  • Embeber un el mapa en una página web y otras opciones de los Living Atlas.
VÍDEO 6: Publicar un servicio desde ArcMAP 68 min
  • Publicar servicios de entidades tanto desde AGOL como de ArcMAP.
  • Crear entidades vacías en AGOL.
  • Publicar servicios de teselas desde ArcMAP
VÍDEO 7: Servicios ready-to-use 65 min
  • Repaso por los distintos servicios Ready-to-use.
  • Geocodificar direcciones.
  • Crear cuencas hidrológicas.
  • Crear perfiles del terreno.
  • Cálculo de rutas óptimas.
VÍDEO 8: Herramientas de análisis espacial en ArcGIS Online 55 min
  • Análisis espacial
  • Encontrar mejores rutas
  • Crear buffers e intersectar capas
VÍDEO 9: Preparando nuestros datos para crear aplicaciones web 59 min
  • Definir dominios y plantillas para crear capas más interactivas.
  • ArcGIS collector.
VÍDEO 10: Creando nuestra primera aplicación con Web App Builder 59 min
  • Que es Web App Builder.
  • Esquema para preparar un aplicación.
  • Tratamiento de datos previos.
  • Publicación de los datos.
  • Abrir los datos en la ventana de Mapas.
  • Guardar mapa. Compartirlo en Webb App Builder.
  • Personalizar nuestra aplicación