6.2. Lesson: Análisis Vectorial

Los datos vectoriales también se pueden analizar para revelar cómo las diferentes entidades interactúan entre sí en el espacio. Hay muchas funciones diferentes relacionadas con el análisis, por lo que no las revisaremos todas. Más bien, haremos una pregunta e intentaremos resolverla utilizando las herramientas que proporciona QGIS.

El objetivo de esta lección: Plantear una pregunta y contestarla utilizando las herramientas de análisis.

6.2.1. basic El proceso SIG

Antes de empezar, sería útil dar una breve descripción de un proceso que se puede utilizar para resolver un problema. La forma de hacerlo es:

  1. Plantear el problema

  2. Obtener los datos

  3. Analizar el problema

  4. Presentar los resultados

6.2.2. basic El Problema

Comencemos este procedimiento eligiendo un problema que se deba resolver. Por ejemplo, imaginemos que eres un agente inmobiliario que está buscando un inmueble en Swellendam para clientes con el siguiente perfil:

  1. Necesita estar en Swellendam

  2. Debe estar a una distancia razonable conduciendo de una escuela (digamos 1 km)

  3. Debe medir mas de 100m cuadrados

  4. A menos de 50m de la calle principal

  5. Mas cerca de 500m a un restaurante

6.2.3. basic Los Datos

Para contestar a estas preguntas, vamos a necesitar los siguientes datos:

  1. Las propiedades residenciales (buildings) en el área

  2. Las carreteras dentro y alrededor de la ciudad

  3. La localización de escuelas y restaurantes

  4. El tamaño de las construcciones

Estos datos están disponibles a través de OSM, y debe encontrar que el conjunto de datos que ha estado utilizando a lo largo de este manual también se puede usar para esta lección.

Si desea descargar datos de otra área, vaya a Introduction Chapter para leer como hacerlo

Nota

Aunque hay coherencia en los campos de datos que encontramos en las descargas de OSM, pueden variar en su cobertura y detalle. Si ves, por ejemplo, que la región que has elegido no contiene información sobre restaurantes, quizás necesitas elegir otra región.

6.2.4. basic Follow Along: Comenzar un Proyecto y obtener los Datos

Primero necesitamos cargar los datos para trabajar con ellos.

  1. Inicia un nuevo proyecto QGIS

  2. Si quieres, puedes añadir un mapa de fondo. Abre el Explorador y carga el mapa OSM de fondo en el menú XYZ Tiles.

    ../../../_images/osm_swellendam.png
  3. En la base de datos Geopackage training_data.gpkg , Encontrará la mayoría de los conjuntos de datos que utilizaremos en este capítulo:

    1. buildings

    2. roads

    3. restaurants

    4. schools

    Cárgalos, y además landuse.sqlite.

  4. Zoom a la extensión de la capa para ver Swellendam, Sudáfrica

    Antes de proceder filtraremos la capa roads, para tener solo unos tipos específicos de carreteras con las que trabajar.

    Algunas carreteras en los conjuntos de datos OSM son listados como unclassified, tracks, path y footway. Queremos excluirlos de nuestro conjunto de datos y centrarnos en los otros tipos de carreteras, más adecuados para este ejercicio.

    Además, los datos de OSM pueden no actualizarse en todas partes, y también excluiremos los valores NULL.

  5. Click derecho en la capa roads y elige Filtrar….

  6. En el diálogo emergente filtramos estas entidades con la siguiente expresión:

    "highway" NOT IN ('footway', 'path', 'unclassified', 'track') AND "highway" IS NOT NULL
    

    La concatenación de los dos operadores NOT e IN excluye todas las entidades que tienen estos valores de atributo en el campo highway.

    IS NOT NULL combinado con el operador AND excluye roads sin valor en el campo``highway``.

    Note el icono indicatorFilter al lado de la capa roads. Le ayuda a recordar que esta capa tiene un filtro activado, por lo que algunas entidades pueden no estar disponibles en el proyecto.

El mapa con todos los datos debería verse como el siguiente:

../../../_images/osm_swellendam_2.png

6.2.5. basic Try Yourself Convertir el SRC de una Capa

Debido a que vamos a medir distancias dentro de nuestras capas, necesitamos cambiar el SRC de las capas. Para hacer esto, debemos seleccionar cada capa una a una, guardar la capa en una nueva con nuestra nueva proyección, y luego importar esa nueva capa en nuestro mapa.

Tienes muchas opciones diferentes, p.ej. puede exportar cada capa como un conjunto de datos en formato Shapefile de ESRI, puede agregar las capas a un archivo GeoPackage existente o puede crear otro archivo GeoPackage y llenarlo con las nuevas capas reproyectadas. Mostraremos la última opción, por lo que training_data.gpkg permanecerá limpio. Siéntase libre de elegir el mejor flujo de trabajo para usted.

Nota

En este ejemplo, estamos utilizando el SRC WGS 84 / UTM zone 34S, pero debe usar un SRC UTM que sea más apropiado para su región.

  1. Click derecho en la capa roads en el panel Capas

  2. Click en Exportar –> Guardar Objetos Como…

  3. En el diálogo Guardar Capa Vectorial como elija GeoPackage como Formato

  4. Click en para el Nombre de archivo, y nombra al nuevo GeoPackage vector_analysis

  5. Cambia el Nombre de la Capa a roads_34S

  6. Cambia el SRC a WGS 84 / UTM zone 34S

  7. Click en Aceptar:

    ../../../_images/save_roads_34S.png

    Esto creará la nueva base de datos GeoPackage y agregará la capa roads_34S.

  8. Repita este proceso para cada capa, creando una nueva capa en el archivo GeoPackage vector_analysis.gpkg con _34S agregado al nombre original y eliminando cada una de las capas antiguas del proyecto.

    Nota

    Cuando elige guardar una capa en un GeoPackage existente, QGIS agregará esa capa al GeoPackage.

  9. Una vez que haya completado el proceso para todas las capas, haga click con el botón derecho en cualquier capa y haga click en Zoom a la extensión de la capa para enfocar el mapa sobre el área de interés.

Ahora que hemos convertido los datos de OSM en una proyección UTM, podemos comenzar nuestros cálculos.

6.2.6. basic Follow Along: Analizando el Problema: Distancias a Colegios y Carreteras.

QGIS le permite calcular distancias entre cualquier objeto vectorial.

  1. Compruebe que las capas roads_34S y buildings_34S está visibles (para simplificar el mapa mientras trabaja)

  2. Click en Procesos ► Caja de Herramientas para abrir el núcleo analítico de QGIS. Basicamente, todos los algoritmos (para análisis vectorial y ráster) están disponibles en esta caja de herramientas.

  3. Comenzamos calculando el área alrededor de las roads_34S usando el algoritmo:guilabel:Buffer. Puede encontrarlo en el grupo Geometría Vectorial.

    ../../../_images/processing_buffer_1.png

    O puede escribir buffer en el buscador de menú en la parte superior de la caja de herramientas:

    ../../../_images/processing_buffer_2.png
  4. Doble click en él para abrir el diálogo del algoritmo

  5. Selecciona roads_34S como Capa de entrada, fija Distancia a 50 y usa los valores por defecto para el resto de parámetros.

    ../../../_images/vector_buffer_setup.png
  6. La Distancia por defecto está en metros porque nuestro conjunto de datos de entrada se encuentra en un Sistema de coordenadas proyectadas que utiliza el medidor como su unidad de medida básica. Puede usar el cuadro combinado para elegir otras unidades proyectadas como kilómetros, yardas, etc.

    Nota

    Si está intentando crear un búfer en una capa con un Sistema de coordenadas geográficas, el procesamiento le avisará y le sugerirá que vuelva a proyectar la capa a un Sistema de coordenadas métrico.

  7. Por defecto, Proceso crea capas temporales y las agrega al panel Capas. También puede agregar el resultado a la base de datos GeoPackage de la siguiente manera:

    1. Clickando en el botón y escogiendo Guardar en GeoPackage…

    2. Nombrando la nueva capa roads_buffer_50m

    3. Guardándola en el archivo vector_analysis.gpkg

    ../../../_images/buffer_saving.png
  8. Click en Ejecutar, y entonces cierre el diálogo Buffer

    Ahora tu mapa se parece un poco a esto:

    ../../../_images/roads_buffer_result.png

Si su nueva capa está en la parte superior de la lista Capas, probablemente oscurecerá gran parte de su mapa, pero esto le proporciona todas las áreas de su región que están dentro de los 50 metros de una carretera.

Tenga en cuenta que hay áreas distintas dentro de su búfer, que corresponden a cada carretera individual. Para deshacerse de este problema:

  1. Desmarque la capa roads_buffer_50m y recree el buffer con Disolver resultados activado.

    ../../../_images/dissolve_buffer_setup.png
  2. Guarde la salida como roads_buffer_50m_dissolved

  3. Click en Ejecutar y cierre el diálogo Buffer

Una vez que ha añadido la capa al panel Capas, se parecerá a esto:

../../../_images/dissolve_buffer_results.png

Ahora no hay subdivisiones innecesarias.

Nota

La Ayuda breve en el lado derecho del cuadro de diálogo explica cómo funciona el algoritmo. Si necesita más información, simplemente haga click en el botón Ayuda en la parte inferior para abrir una guía más detallada del algoritmo.

6.2.7. basic Try Yourself Distancia a escuelas.

Usa el mismo enfoque que anteriormente y crea un buffer para tus colegios.

Deberá tener un radio de 1 km. Guarde la nueva capa en el archivo vector_analysis.gpkg como schools_buffer_1km_dissolved.

Comprueba tus resultados

6.2.8. basic Follow Along: Áreas que se solapan.

Ahora hemos identificado áreas donde la carretera está a menos de 50 metros y áreas donde hay una escuela dentro de 1 km (línea recta, no por carretera). Pero obviamente, solo queremos las áreas donde se satisfacen ambos criterios. Para hacer eso, necesitaremos usar la herramienta Intersección. Puede encontrarlo en el grupo Superposición vectorial en Caja de Herramientas de Procesos.

  1. Utilice como las dos capas de búfer la capa de entrada y capa superpuesta, elige el GeoPackage vector_analysis.gpkg en Intersección con nombre de la capa road_school_buffers_intersect. Deja el resto como se sugiere (por defecto).

    ../../../_images/school_roads_intersect.png
  2. Haz click en Ejecutar.

    En la imagen de abajo, las áreas azules son donde se cumplen los dos criterios de distancia.

    ../../../_images/intersect_result.png
  3. Usted puede borrar las dos capas buffer y solo mantener la que muestra la superposición, dado que eso era lo que queriamos conocer en primer lugar:

    ../../../_images/final_intersect_result.png

6.2.9. basic Follow Along: Extraer las Construcciones

Ahora tienes el área a la que las construcciones deben superponerse. A continuación, desea extraer las construcciones en esa área.

  1. Busca la entrada de menú Selección vectorial ► Extraer por ubicación dentro de la Caja de Herramientas de Procesos

  2. Seleccione buildings_34S en Extraer objetos de. Marque intersecan en Donde los objetos (predicado geométrico), seleccione la capa de intersección del búfer en Comparando los objetos de. Guarde en el archivo vector_analysis.gpkg, y nombre la capa well_located_houses.

    ../../../_images/location_select_dialog.png
  3. Click en Ejecutar y cierre el diálogo

  4. Probablemente encontrará que no parece haber cambiado mucho. Si es así, mueva la capa well_located_houses a la parte superior de la lista de capas, luego amplíe.

    ../../../_images/select_zoom_result.png

    Los edificios rojos son los que coinciden con nuestros criterios, mientras que los edificios en verde son los que no.

  5. Ahora tiene dos capas separadas y puede eliminar buildings_34S de la lista de capas.

6.2.10. moderate Try Yourself Filtrado adicional de nuestros Edificios

Ahora tenemos una capa que nos muestra los edificios en un radio de 1km de una escuela y a menos de 50m de una carretera. Ahora tenemos que reducir la selección para que sólo nos muestre los edificios que están a menos de 500 metros de un restaurante.

Usando los procesos descritos anteriormente, cree una nueva capa llamada C que filtre aún más su capa well_located_houses para mostrar solo aquellos que están dentro de 500m de un restaurante.

:ref:` Comprueba tus resultados <vector-analysis-basic-2>`

6.2.11. basic Follow Along: Seleccionar las Construcciones de Tamaño Adecuado

Para ver qué edificios son del tamaño correcto (más de 100 metros cuadrados), necesitamos calcular su tamaño.

  1. Seleccione la capa houses_restaurants_500m y abra la Calculadora de campo haciendo click en el botón calculateField Abrir calculadora de campo en la barra de herramientas principal o en la ventana de la tabla de atributos

  2. Seleccione Crear un nuevo campo, establezca Nombre del campo de salida en AREA, elija Número decimal (real) como Tipo de campo de salida, y elija $area del grupo Geometría.

    ../../../_images/buildings_area_calculator.png

    El nuevo campo AREA contendrá el área de cada edificio en metros cuadrados.

  3. Click en Aceptar. El campo AREA se ha agregado al final de la tabla de atributos.

  4. Haga click en el botón toggleEditing Conmutar edición para finalizar la edición y guardar las ediciones cuando se le solicite.

  5. En la pestaña Fuente de las propiedades de capa, establezca el Filtro de objeto del proveedor a "AREA >= 100.

    ../../../_images/buildings_area_query.png
  6. Haz click en Aceptar.

Su mapa ahora solo debería mostrarle aquellos edificios que coinciden con nuestros criterios iniciales y que tienen más de 100 metros cuadrados de tamaño.

6.2.12. basic Try Yourself

Guarde su solución como una nueva capa, utilizando el enfoque que aprendió anteriormente para hacerlo. El archivo debe guardarse dentro de la misma base de datos GeoPackage, con el nombre solution.

6.2.13. In Conclusion

Utilizando el enfoque de resolución de problemas SIG junto con las herramientas de análisis de vectores QGIS, pudo resolver un problema con múltiples criterios de forma rápida y fácil.

6.2.14. What’s Next?

En la próxima lección, veremos cómo calcular la distancia más corta a lo largo de las carreteras de un punto a otro.