domingo, 10 de febrero de 2019

Selección de elementos próximos

Una de las tareas más habituales que se suelen realizar cuando se analiza información geoespacial, es el análisis de proximidad entre elementos que representan activos físicos. 

Así pues en muchas ocasiones necesitamos saber el número de viviendas que ubicadas en una localidad, los kilómetros de carreteras que hay en una provincia o por ejemplo el número de papelerías a menos de un kilómetro de los colegios de una localidad.


Para ello QGIS utiliza la herramienta de "Selección por localización" que nos permite realizar la selección de los elementos de una capa en función de su posición relativa a los elementos de otra capa. 



Está herramienta a pesar de permitirnos definir el tipo de relación espacial entre capas ( contacto, inclusión...) adolece en las versiónes 3.x de la capacidad de añadir un radio de búsqueda para análisis de proximidad. Una forma de salvar está limitación es creando un Buffer de la entidad geométrica de origen, y a partir de la capa poligonal generada, hacer uso de la herramienta de selección espacial.


Así por ejemplo si queremos seleccionar los elementos puntuales de una capa que se encuentren a menos de 1000 metros de otra capa de puntos, generaremos un Buffer de 1000 metros de la segunda capa, y elegiremos los elementos que solapen con los polígonos creados.

Si bien esto es una solución, nos llevará un tiempo hacerlo, cada vez que tengamos que realizar este tipo de análisis.

Una forma de solucionar esto es generar un modelo que aglutine todos estos procesos en uno solo.
Para ello a parte de incluir las dos capas de entrada y las herramientas de buffer primero y luego selección por localización, tendremos que añadir la opción de definir el radio de búsqueda, como último parámetro de entrada.



Así pues con solo ejecutar la herramienta y añadir el radio de búsqueda seleccionaremos los elementos próximos a la capa de entrada.









jueves, 26 de abril de 2018

Vículos en QGIS

En muchas ocasiones las entidades geométricas representadas en un conjunto de capas vectoriales, hacen referencia a entidades físicas, que más allá de una serie de atributos contenidos en la BBDD asociada necesitan ser tenidas en cuenta por otra serie de características que resultan difíciles (o muy costosas) resumir en formato tabular. 

Para ello puede resultar útil poder acceder a documentación relacionada con estas, y que puede ser de muy diversa índole; fotos, documentos, direcciones URL...
QGIS contempla la posibilidad de crear enlaces a nivel de entidad (geométrica o registro en la BBDD) para acceder a ellos de una manera rápida desde el mapa en el que estamos trabajando, simplemente pulsando en el elemento que queremos escrutar.

En la tabla de propiedades podremos establecer en la pestaña de Acciones una serie de parámetros que regirán la manera en que QGIS accede a los datos referenciados.


Cómo ejemplo tomaremos una capa de elementos puntuales, que hacen referencia a viviendas de una determinada localidad. Estos elementos, a parte de por la dirección, están identificados por un número, que es único para cada entidad (en este caso ID_PORPK). Así mismo tenemos una serie de imágenes de las fachadas de las viviendas en formato .jpg almacenadas en una carpeta, cuyo nombre es el identificador único de estas.

Así pues accediendo a la ventana de acciones en la tabla de propiedades de la capa puntual, definiremos los parámetros de la siguiente manera:


Ahora una vez definido la localización de las imágenes, la manera mas fácil de acceder a ellas desde QGIS es utilizando el botón de ejecutar acción de objeto, que en caso de solo tener esta acción asociada al objeto nos abrirá automáticamente la imagen.


En caso de tener mas de una tendremos que elegir del desplegable la acción que previamente definiésemos para abrir la imagen asociada al objeto espacial en cuestión.



Una alternativa para acceder a la imagen es utilizando el complemento Hotlink, que deberá estar previamente instalado.



martes, 20 de febrero de 2018

Modelos en QGIS

Al igual que con ArcGIS se pueden generar modelos en ArcToolbox para automatizar tareas recurrentes a partir del catálogo de herramientas disponibles dentro de la aplicación, que nos permite además integrar scripts externos, por ejemplo de Python, QGIS cuenta con una entorno similar, para encadenar tareas y crear modelos que podrán ser utilizados posteriormente, con el consiguiente ahorro de tiempo que ello implica.



Para ello desarrollaremos una herramienta que nos permita unir varias tareas tanto de geoprocesamiento con capas vectoriales, cómo la utilización de tablas o BBDD.

Por último predefiniremos las opciones para ejecutar de manera automática el proceso (algoritmo preconfigurado) , sin necesidad de abrir el cuadro de diálogo.

La interfaz es muy sencilla y está dividida en dos espacios principales, a la derecha la zona donde crearemos el modelo a partir de los Algoritmos, y elementos de entrada del modelo, que serán seleccionados de la ventana situada a la izquierda.




Así pues lo primero es añadir los elementos de entras (Inputs) que pueden ser de diverso tipo, cómo por ejemplo capas vectorial, raster, tablas... 

Una vez definido las capas y elementos que van a interactuar en el modelo, es hora de definir los procesos y herramientas que van a actuar sobre estas, y los elementos de salida.

En el ejemplo utilizaremos como capa objetivo una capa de elementos puntuales, a la cual asignaremos un sistema de referencia adecuado, a partir del cual extraeremos las coordenadas. Posteriormente realizaremos una unión espacial con otra capa poligonal, para asignar el nombre del polígono que contiene o esta en contacto con cada elemento puntual. Además contaremos con un fichero .xls cuya información ha de ser añadida a la capa de entrada. 

Por último, a la capa de salida le asignaremos un estilo, previamente definido.




En caso de usar recurrentemente las mismas capas con los mismos nombres, podremos preconfigurar la herramienta, de tal manera que con un solo clic lanzaremos el modelo, sin necesidad de definir una y otra vez las capas y elementos de salida.





lunes, 12 de febrero de 2018

Unión Espacial & Unión por atributos

Una de las funcionalidades más utilizadas en análisis de datos geoespaciales es la unión de elementos, bien por su localización, bien por algún atributo asociado al mismo, que tiene en común con otros entidades físicas.

Cualquier GIS que se precie tiene en su catálogo éstas herramientas, con más o menos opciones, que nos permitirá definir las particularidades del geoprocesamiento a realizar.

En esta entrada emplearemos QGIS para ilustrar los ejemplos, que como muchos ya sabréis es un potente software GIS libre.

Unión Espacial (Spatial Join)

En ocasiones necesitamos conocer las relaciones espaciales entre elementos que comparten una misma ubicación, bien porque necesitamos conocer la proximidad de los elementos de distintas capas de información, o bien porque necesitamos combinar los atributos entre elementos próximos.

Una de las situaciones más comunes es intentar conocer el numero de elementos puntuales que se encuentran incluidos dentro de un elemento poligonal. Por ejemplo en ocasiones necesitamos conocer el número de viviendas situadas en un polígono que representa por ejemplo una división administrativa. De esta manera podremos tener un resumen estadístico de la relación entre una capa A con otra B.


Así pues el polígono 890393 contiene cinco viviendas en su interior. Si realizamos la operación con la herramienta ¨Unir atributos por localización¨


y seleccionamos en las opciones de la herramienta ¨Tomar resumen de objetos espaciales que intersectan¨ se añadirán a los campos iniciales de la capa objetivo (en una nueva capa) una serie de campos con un resumen estadístico de la distribución de los elementos puntuales sobre cada elemento poligonal. La ultima columna es la de recuento del numero de elementos contenidos en el polígono. 


Si por el contrario lo que queremos es asignar algún atributo de un elemento a otro de otra capa, en base a su relación espacial, tendríamos que seleccionar la opción "Tomar atributos del primer objeto espacial localizado". 

Por ejemplo si queremos asignar a las viviendas el número de polígono al que pertenecen, además de definir la opción antes mencionada, cambiaríamos el orden de las capas, ya que en este caso la capa objetivo, será la capa puntual. 





Unión por atributos 

Otro caso muy común con el que nos solemos encontrar es que la información proporcionada sea, no solo en formato vectorial, sino también en formato de tabla (Exel, txt, csv...), y de alguna manera esa información ha de ser plasmada y relacionada con las entidades físicas representadas en el mapa. 

Por ejemplo, puede ser que tengamos cierta información de las viviendas en formato vectorial, y otra parte de los datos en un archivo Excel. Evidentemente para poder relacionar ambas informaciones, hemos de tener un campo con registros únicos presente en ambas tablas.

Así pues imaginemos que hemos descargado los datos del censo de una ciudad resumidos por habitantes por vivienda, y queremos representar estos valores de manera espacial, para crear un mapa de calor de densidad de población, por ejemplo para estudiar el futuro emplazamiento de un determinado comercio. Cómo ya tenemos la capa de viviendas podremos crear una relación con el Excel en base el identificador único de cada vivienda.








miércoles, 22 de febrero de 2017

Edición de datos geográficos en OpenStreetMap

Probablemente muchos de vosotros ya conoceréis o habréis oído hablar de OpenStreetMap (OSM). Este proyecto arrancó en 2004 en Reino Unido de manos de Steve Coast y su motivación principal fue, y es la creación, edición y distribución de mapas libres.

Originalmente algunas agencias británicas cedieron parte de sus datos e infraestructuras para dar comienzo al proyecto, y a lo largo de los años numerosas organizaciones, gobiernos y entidades públicas y privadas de todo el mundo se han ido uniendo a la causa cediendo datos cartográficos de muy diversa índole.

El proyecto surgió como respuesta al déficit de información geográfica de acceso libre y gratuito, lo cual impedía o hacía muy costoso la creación de productos geoespaciales derivados, o su uso para cualquier otro fin, y que imposibilitaba la corrección de los datos existentes incorrectos o erróneos.

A parte de las aportaciones de organismos y entidades, cualquier persona puede contribuir al crecimiento y mantenimiento de la base de datos geográfica, añadiendo nuevas entidades o modificando las existentes, lo que marca una gran diferencia con los distribuidores de cartografía comerciales, que en la mayoría de los casos permiten su visualización, pero no hacer ningún tipo de edición sobre ellos.

Para formar parte de la comunidad de editores no es necesario ser un profesional de la cartografía, ni tan siquiera necesitaremos aportar nuestra información personal, simplemente es necesario darse de alta en la página de OSM aportando una dirección de correo electrónico.

Existen multitud de proyectos e iniciativas emprendidas en la comunidad OSM tanto a nivel individual como colectivo, que pretenden ampliar la base de datos geográfica con el fin de hacer más accesible la información geoespacial.

Los motivos que nos pueden llevar a editar y/o añadir información en OSM pueden ser muy diversos y van desde acciones humanitarias, como por ejemplo el proyecto "The Humanitarian OpenStreetMap" , hasta el simple inventariado urbano, suscitado, en la mayoría de los casos, por una actitud altruista de divulgación de información, en este caso geográfica.

Una vez logeados, ya estaremos en disposición de realizar nuestras aportaciones a la comunidad. Ahora solo necesitaremos elegir el modo de hacerlo. Existen, a grandes rasgos, dos opciones a la hora de editar información en OSM, la primera sería la toma de datos en campo, directamente con dispositivos GPS cargando un archivo GPX, y la segunda es la edición directamente desde un PC usando uno de los programas que ofrece la página de OpenStreetMap, o bien por medio de programas de terceros como ArcGIS o QGIS, por ejemplo.

En esta entrada nos centraremos en la edición con las propias herramientas desarrolladas para el proyecto, bien integradas en la propia página (iD y Potlach 2), o bien desarrolladas para instalar y ejecutar desde un ordenador (JOSM o Merkaartor).




Editor iD (web)


Editor Potlatch 2 (web)


Editor JOSM (escritorio)


Editor Merkaartor (escritorio)


Los dos primeros editores modifican la información en "tiempo real" sobre la BBDD de OSM. Las versiones de escritorio funcionan haciendo una copia de la información en el equipo, para una posterior subida de las modificaciones realizadas.

OSM tiene predefinidas por defecto una serie de entidades, con sus atributos asociados, aunque en este aspecto permite cierta flexibilidad a la hora de crear elementos fuera de las categorías predefinidas, con la incorporación de nuevos campos en la tabla de atributos.


Ejemplo de creación de un elemento puntual 


En definitiva la colaboración en OSM no deja de ser una decisión altruista para contribuir a una mayor difusión de la información geográfica, para poder ser utilizada, editada y distribuida de manera totalmente libre.

jueves, 16 de febrero de 2017

Generación de informes en ArcGIS

Como para cualquier otro profesional que se dedique al análisis de datos, una de las tareas más importantes y a la vez una de las más complicadas con la que nos encontramos los profesionales de los SIG, es difundir la información extraída de los mismos, de tal manera que resulte fácil de entender para los potenciales consumidores de los mismos, que probablemente no sean expertos en Sistemas de Información Geográfica, o bien no tienen tiempo para analizar complejos mapas e intrincadas gráficas y tablas de datos. Es por ello que en muchas ocasiones tenemos que encontrar el equilibrio entre lo que se quiere representar a partir de los datos disponibles, y lo que el cliente está dispuesto o capacitado a consumir.

En general la pérdida de información representada en un mapa es algo intrínseco a su definición y más aún cuando éste, está asociado a una base de datos geoespacial.

De cualquier manera, los que nos dedicamos a los GIS estamos de enhorabuena, ya que cada vez más, el uso de la componente geográfica está más extendido y valorado. No en vano una gran variedad de aplicaciones para dispositivos móviles, integran de una u otra manera la componente geoespacial, bien directamente, por ejemplo en cualquier aplicación que nos ayude a encontrar el restaurante más cercano, o bien los utilizan para conocer nuestros hábitos, para poder ofrecernos servicios más personalizados, adaptada a estos.

Por ello, el uso y comprensión de los mapas se está extendiendo de una manera vertiginosa, lo cual nos permite a los que nos dedicamos a generarlos, incrementar el grado de complejidad de los mismos. Aun así, en muchas ocasiones la información asociada a un dato geoespacial es tan basta, que se hace imposible la representación íntegra en los mimos.

Mucha de esta información que no puede ser representada en forma de mapa, corresponde a los datos tabulares almacenada en una base de datos. La forma más frecuente de tratar esta información es usando cualquier programa de hojas de cálculo, como puede ser Excel.

Es muy sencillo, si estamos utilizando ArcGIS, abrir (o en el peor de los casos, exportar) la información en formato GIS (geodatabase,  shapefile...) a un formato compatible con Excel, para realizar análisis complementarios, y representar los datos de una manera más visual (gráficos, dashboards...) El principal problema que nos encontramos al trabajar con programas externos es, como ya vimos en entradas anteriores, la "desconexión" con los datos originales, que dependiendo de la naturaleza y el uso que pretendamos darles, pueden hacer de este método una opción inviable o poco práctica.

Es por ello que la opción más óptima sería la utilización de ArcGIS para el análisis y representación integra de la información disponible, y aunque es cierto que en las versiones más recientes del Software de ESRI están haciendo especial hincapié en estos aspectos, las versiones anteriores adolecían de ciertas carencias a este respecto.

Aun así existe una funcionalidad en ArcGIS, no demasiado popular, que puede ser utilizada para la representación de datos tabulares, de una manera directa desde la fuente de datos.



La función "Report" o "Informes" nos permite, a partir de la información alfanumérica generar informes con un alto grado de personalización tanto en la información que queremos mostrar como en la apariencia del mismo, con la ventaja de poder ser creados para un conjunto de datos diferentes o que cambian en el tiempo, manteniendo el mismo formato.





Como comentábamos el informe generado puede ser modificado y personalizado fácilmente, para lograr el aspecto que deseemos.




Si necesitas más información acerca de los informes en ArcGIS, podrás encontrarla en la pagina de ayuda de ArcGIS


jueves, 19 de enero de 2017

Utilidad de la información geoespacial

Una de las funcionalidades que destacan en un GIS sobre otros Programas de visualización de datos espaciales, es su capacidad para realizar análisis complejos de los datos tanto geográficos (capas de diversa índole) como alfanuméricos (BBDD). Estos van desde simples relaciones espaciales y de vecindad, hasta complejos análisis de redes y topológicos.

A lo largo de la evolución de los SIG estas funcionalidades se han ido ampliando hasta alcanzar los niveles de complejidad que hoy en día tiene, por ejemplo, ArcGIS y todas sus extensiones (incluida la más evolucionada y reciente ArcGIS Pro).

Esta evolución no ha pasado desapercibida para las industrias y negocios de todo tipo, pero especialmente para aquellos en los que la componente geoespacial es crítico, como por ejemplo las “Utilities”, Transportes, defensa y gestión del territorio, los cuales necesitan en todo momento conocer tanto la localización de sus activos, como otra serie de atributos y características, ya sean estas estáticas (material, año de instalación...) como dinámicas (lecturas de sensores, grado de deterioro...)

A parte de estar presente en las industrias anteriormente mencionadas, los Sistemas de Información Geográfica en general, y la componente geoespacial de los activos físicos en particular, están presentes cada vez más como parte indisoluble de las nuevas tecnologías que se nutren y benefician de la importancia del "donde".

Por ejemplo, en el Internet de las Cosas o IoT, concepto utilizado para referirse a la conexión e interacción de los diferentes objetos cotidianos, generalmente vía internet, podemos encontrar multitud de ejemplos y situaciones en los que la componente espacial de los objetos interconectados será determinante. Un ejemplo sencillo sería la comunicación entre un smartphone y el sistema de climatización de una vivienda. Utilizando el sistema de localización del teléfono, la casa será "consciente" de que nos aproximamos, y podrá adaptar su temperatura y humedad sin necesidad de intervención humana, a los parámetros apropiados, previamente definidos o no.

Así mismo, y siguiendo con el ejemplo anterior, si nuestra vivienda se encuentra englobada en una Ciudad Inteligente o Smart City, está podrá comunicarse con los sensores situados en las proximidades de la misma para conocer los detalles de los diferentes parámetros recolectados (temperatura, humedad, contaminantes), para regular y optimizar los niveles de confort de la vivienda.

En ocasiones, que estemos próximos a la vivienda, no significa que necesitemos activar los sistemas de climatización, o por el contrario podemos estar a más de 10 km y tardar menos de 5 minutos en llegar a casa. Para solventar este tipo de situaciones los dispositivos pueden utilizar la información almacenada a lo largo de la actividad diaria, para analizar patrones de comportamiento que se repiten a lo largo del tiempo. Por ejemplo es probable que todos los miércoles hagamos la compra, y no vayamos a casa directamente. Es más, aunque no tengamos un día definido para ir al supermercado, la ruta al mismo, es la misma, y si al salir del trabajo, giramos a la derecha en un cruce determinado, el móvil podrá comunicarse con la vivienda y decirle que aún no vamos a casa.

De la misma manera otros datos pueden ser utilizados para determinar lo que tardaremos en llegar a casa, como la información del tráfico, o incluso la disponibilidad de aparcamiento en la proximidad de la vivienda.

Otra de las tecnologías que en los últimos años están marcando la tendencia en el análisis de la información, es el análisis de los datos masivos o Big Data. Desde el punto de vista de la información geoespacial, el análisis de una gran cantidad de información con este enfoque nos permitirá extraer información subyacente de los mismos, que de otra manera pasaría desapercibida. De esta manera analizando miles de datos procedentes de los GPS de los Smartphones por ejemplo, podríamos encontrar que las rutas seguidas por los conductores de una determinada ciudad, esconden ciertos patrones ocultos para un análisis clásico, y que pueden ser utilizados solos o combinados con otros datos, para, por ejemplo, definir el emplazamiento óptimo de un determinado comercio.

En definitiva los datos geoespaciales son, cada vez más, una fuente de información muy valiosa, que utilizada apropiadamente puede generar un valor añadido a nuestro negocio, sea cual sea éste, y que en conjunción con los nuevos enfoques y tecnologías van a contribuir de manera determinante a su generalización y uso extensivo en todos los ámbitos, no solo empresariales, sino también cotidianos, no en vano un gran número de aplicaciones para nuestro Smartphone utilizan la geolocalización del dispositivo, generalmente para mejorar la experiencia en el uso de la aplicación (en otros casos es para vender esa información a terceros).