Calcular Densidad de Intersección de Calle (QGIS3)

La densidad de intersección de calle es una medida útil de conectividad de red. Se puede extraer y agregar las intersecciones de calle a lo largo de una cuadrícula regular para calcular la densidad. Este análisis es comúnmente usado en diseño de transporte así como en planificación urbana para determinar caminabilidad de barrios. Con la disponibilidad de un conjunto de datos global de red de calles de OpenStreetMap y QGIS, podemos fácilmente calcular y visualizar densidad de intersección para cualquier región del mundo.

Vista general de la tarea

En este tutorial, tomaremos los datos de la red caminera de OpenStreetMap y calcularemos la densidad de las intersecciones de las calles de la ciudad de Chennai, en la India.

Otras habilidades que aprenderá

  • Cómo descargar datos OpenStreetMap como archivos shape y recortarlos a su área de interés.

  • Cómo crear cuadrículas en QGIS

Obtener los datos

Usaremos los datos de opencities para conseguir los límites de ciudad para Chennai y, luego los datos de red de caminos de Extractos de Datos OpenStreetMap para la India.

Descargar el Límite de Ciudad

  1. Visite el sitio web opencity, luego busque “Chennai wards map”.

../../_images/data12.png
  1. Clic en el primer enlace y descargue los datos en formato KML. Se descargará una capa Chennai-wards-2011.kml.

../../_images/data21.png

Descargar la Red de Caminos

  1. Visite el servidor OpenStreetMap Data Extracts download de GEOFABRIK. Para este tutorial necesitaremos los datos para la ciudad de Chennai en India. Clic Asia.

../../_images/data31.png
  1. Ahora en sub-regions, seleccione India.

../../_images/data41.png
  1. El archivo india-latest-free.shp.zip es el que estamos buscando. Clic en él para descargarlo. Estos datos pueden ser descargados en otros formatos también, a pedido.

../../_images/data51.png
  1. Esta es una descarga grande que contiene un extracto de datos para todo el país. Descomprima india-latest-free.shp.zip. Obtendrá muchas capas de archivos shape.

../../_images/data61.png

Corte la Red de Caminos al Límite de Ciudad

  1. Ahora vamos a cortar la capa de caminos de nivel de país a nuestra área de interés. Abra QGIS, y arrastre y suelte Chennai-wards-2011.kml.

../../_images/data71.png
  1. En lugar de abrir una capa grande en QGIS, podemos leerla directamente del disco y recortarla. Abra la caja de herramientas de procesamiento y localice el algoritmo Superposición de vectores ‣ Recorte. Haga doble clic para abrirlo.

../../_images/data8.png
  1. En la Capa de entrada seleccione ... y clic en Explorar la capa..

../../_images/data9.png
  1. Navegue al directorio donde descargó los datos OpenStreetMap y seleccione gis_osm_roads_free_1.shp. En la Capa de superposición elija New Wards from Oct 2011. Luego clic ... en Clipped y seleccione Guardar a archivo…. Explore una carpeta donde quiere guardar los resultados, ingrese el nombre chennai_roads.gpkg, y clic Ejecutar.

../../_images/data10.png
  1. Una vez finalizado el procesamiento, se cargará en el lienzo una nueva capa chennai_roads.

../../_images/data111.png

Para su comodidad, puede descargar directamente una copia del conjunto de datos cortado del enlace de abajo:

Fuente de datos: [OPENCITIES] [GEOFABRIK]

Procedimiento

  1. Ahora ambas capas utilizadas para el cálculo estarán disponibles, si has descargado los datos, entonces localiza Chennai-Wards-2011.kml y chennai_roads.gpkg en Navegador, luego arrástralas y suéltalas en el lienzo.

../../_images/image1.png
  1. La primera tarea es extraer las intersecciones de caminos. Esto puede hacerse usando la herramienta incorporada Intersección de líneas. Probemos esto primero en un pequeño subconjunto para ver si los resultados son satisfactorios. Seleccione la capa de caminos y use la herramienta Seleccionar objetos espaciales por Área para dibujar un rectángulo y seleccione unos pocos caminos.

../../_images/image2.png
  1. Abra la caja de herramientas de Procesos y localice el algoritmo Superposición de vectores ‣ Intersecciones de líneas. Haga doble clic para abrirlo.

../../_images/image3.png
  1. Seleccione chennai_roads tanto para Capa de entrada como Capa de intersección. Asegúrese de marcar la casilla Objetos seleccionados solamente. Clic Ejecutar.

../../_images/image4.png
  1. Se agregará una nueva capa Intersections. Notará que mientras la mayoría de los puntos de intersección son correctos, hay algunos falsos positivos. Esto se debe a que el algoritmo considera como válidas las intersecciones de cada segmento de línea. Pero para nuestro análisis, necesitamos extraer sólo las intersecciones cuando 2 o más calles intersectan.

../../_images/image5.png
  1. Elimine la capa de Intersecciones y haga clic en el botón Deseleccionar características de todas las capas para eliminar la selección. Ahora vamos a fusionar todos los segmentos de camino adyacentes, de modo que los segmentos entre las intersecciones se fusionen en una única característica. Abra la caja de herramientas de Procesos y localice el algoritmo Geometría vectorial ‣ Disolver. Haga doble clic para abrirlo.

../../_images/image6.png
  1. Seleccione chennai_roads como la Capa de entrada. Ingrese roads_dissolved.gpkg para el nombre de la capa disuelta de salida. Clic Ejecutar.

../../_images/image7.png
  1. La capa resultante roads_dissolved tiene todos los segmentos de camino unidos en un solo objeto espacial.

../../_images/image8.png
  1. A continuación, abra la caja de herramientas de Procesos y localice el algoritmo Geometría vectorial ‣ Multipartes a partes individuales. Haga doble clic para abrirlo. Seleccione la capa roads_dissolved como Capa entrada. Introduzca roads_singleparts.gpkg como salida de partes individuales. Haga clic en Ejecutar.

../../_images/image9.png
  1. La capa resultante roads_singleparts tendrá todos los segmentos adyacentes fusionados, elimina las capas roads_dissolved y chennai_roads. Ahora, abra la caja de herramientas Procesos y localice el algoritmo Superposición de vectores ‣ intersecciones de líneas. Haga doble clic para iniciarlo.

../../_images/image10.png
  1. Seleccione roads_singleparts tanto como Capa de entrada y Capa de intersección. A la capa de salida Intersecciones, dele el nombre roads_line_intersections.gpkg. Clic Ejecutar.

../../_images/image11.png

Nota

Esta es una operación computacionalmente intensiva y podría tomar un largo tiempo dependiendo de la capacidad de procesamiento de su computadora.

  1. La capa resultante roads_line_intersections tiene ahora todas las intersecciones correctamente identificadas. Pero todavía no es perfecta. Utilice la herramienta Seleccionar características por área y seleccione cualquier intersección. Verá que en cada intersección hay algunos puntos duplicados de segmentos adyacentes. Si utilizamos esta capa para el análisis posterior, el resultado será un número inflado de intersecciones. Vamos a eliminar los duplicados, abra la caja de herramientas de procesamiento y localice el algoritmo Vector general ‣ Eliminar geometrías duplicadas. Seleccione roads_line_intersections como Capa de entrada e introduzca road_intersections.gpkg como capa de salida Cleaned. Haga clic en Ejecutar.

../../_images/image12.png
  1. La nueva capa road_intersections tiene el número correcto de intersecciones de carretera extraído de la capa de origen. Haga clic con el botón derecho del ratón en la capa antigua road_line_intersections y seleccione Quitar capa` para eliminarla.

../../_images/image13.png
  1. Ahora calcularemos la densidad de puntos superponiendo una cuadrícula regular y contando los puntos en cada polígono de la cuadrícula. Debemos reproyectar los datos a un SRC proyectado para poder utilizar unidades de medida lineales. Podemos utilizar un SRC apropiado basado en la zona UTM donde se encuentra la ciudad. Puedes ver el mapa UTM Grid Zones of the World para localizar la zona UTM de tu ciudad. Chennai se encuentra en la zona UTM 44N. Abra la caja de herramientas de procesamiento y localice el algoritmo Vector general ‣ Reproyectar. Haga doble clic para abrirlo.

../../_images/image14.png
  1. Seleccione road_intersections como la Capa de entrada. Busque haciendo clic en el icono globo junto a SRC Destino y seleccione EPSG:32664 - WGS 84 / UTM zone 44N. Esta es el SRC basado en el datum WG84 para la Zona UTM 44N. Ingrese para la capa de salida Reproyectado el nombre road_intersections_reprojected.gpkg. Clic Ejecutar.

../../_images/image15.png
  1. Una vez que termine el procesamiento y sea agregada la capa road_intersections_reprojected, clic-derecho y seleccione SRC ‣ Definir SRC de Proyecto a partir de capa. Y quite la capa road_intersections.

../../_images/image16.png
  1. El SRC del proyecto se actualizará en la parte inferior derecha de la ventana. El propósito de este paso es asegurar que todas las capas se muestren en el SRC de la nueva capa. Ahora estamos listos para crear la cuadrícula utilizando la road_intersections_reprojected como referencia. Abra la caja de herramientas de procesado y localice el algoritmo Creación de vectores ‣ Crear cuadrícula. Haga doble clic para abrirlo.

../../_images/image17.png
  1. Seleccione el tipo de Cuadrícula como Rectángulo (Polígono). Clic el botón ... en Extensión de cuadrícula y seleccione Calcular desde capa ‣ road_intersections_reprojected.

../../_images/image18.png
  1. Seleccione el SRC de Proyecto como el SRC de la Cuadrícula. Queremos crear una cuadrícula de 1km x 1km, por lo que defina tanto el Espaciado horizontal como el Espaciado vertical como 1000 metros. Guarde la capa de salida Cuadrícula como grid.gpkg. Clic Ejecutar.

../../_images/image19.png
  1. Se creará la capa grid que contiene los polígonos de la cuadrícula rectangular. Ahora podemos contar el número de puntos de cada polígono, pero como nuestras capas son grandes, este proceso puede llevar mucho tiempo. Una forma de acelerar las operaciones espaciales es utilizar un Índice espacial. Abra la caja de herramientas de procesamiento y localice el algoritmo Vector general ‣ Crear índice espacial. Haga doble clic para abrirlo.

../../_images/image20.png
  1. Seleccione la capa grid y haga clic en Ejecutar, ahora la capa tendrá un índice espacial que puede aumentar el rendimiento del cálculo con esta capa.

../../_images/image21.png
  1. Abra la Caja de herramientas Procesos y localice el algoritmo Análisis de vector ‣ Contar puntos en un polígono

../../_images/image22.png
  1. Seleccione grid como la Capa polígono y road_intersections_reprojected como la Capa de puntos. Guarde la capa de salida Conteo como grid_count.gpkg. Clic Ejecutar.

../../_images/image23.png
  1. La capa resultante grid_count tendrá un atributo NUMPOINTS que contiene el número de puntos de intersección dentro de cada cuadrícula. Hay muchas cuadrículas con 0 puntos. Ayudará a nuestro análisis y visualización quitar polígonos de cuadrícula que no contienen intersecciones. Abra la Caja de herramientas Procesos y localice el algoritmo Selección vectorial ‣ Extraer por atributo.

../../_images/image24.png
  1. Seleccione grid_count como la Capa de entrada, luego seleccione NUMPOINTS como Atributo de selección, > en Operador e ingrese 0 como el Valor. Guarde la capa de salida Extraído (atributo) como grid_counts_chennai.gpkg. Clic Ejecutar.

../../_images/image25.png
  1. La capa resultante grid_counts_chennai tendrá polígonos de cuadrícula sobre la ciudad de Chennai y contiene el número de intersecciones de carreteras como un atributo para cada polígono. Elimine todas las capas excepto grid_counts_chennai.

../../_images/image26.png
  1. Vamos a limpiar la tabla de atributos de nuestra capa de datos. El método preferido para realizar cualquier cambio en la tabla de atributos es utilizar un algoritmo de procesamiento llamado Rehacer Campos, abra la caja de herramientas de procesamiento y localice el algoritmo Tabla de vectores ‣ Rehacer Campos. Haga doble clic para abrirlo. Haga clic en cualquier fila de la sección Field Mapping para seleccionarla. Puede mantener la tecla Mayúsculas para seleccionar varias filas, seleccione todos los campos excepto fid y NUMPOINTS. Haga clic en el botón Borrar campos seleccionados.

../../_images/image27.png
  1. Cambie el nombre del campo NUMPOINTS por intersection_density y guarde la capa como road_intersection_density.gpkg, haga clic en Ejecutar.

../../_images/image28.png
  1. Démosle estilo a esta capa para ver la densidad de cada cuadrícula. Seleccione la capa road_intersection_density y clic Abrir el panel de estilo de capa. Seleccione el representador Graduado, y en Valores, seleccione Intersection Density, una Rampa de colores de su gusto. Defina Clases como 7 y clic Clasificar.

../../_images/image29.png
  1. En los valores introduzca 0-50, 50-100, 100-150 y así sucesivamente hasta 300 - 350. Ahora ha creado un mapa que muestra la densidad de las intersecciones en toda la ciudad.

../../_images/image30.png

If you want to give feedback or share your experience with this tutorial, please comment below. (requires GitHub account)