12 votos

Identificar los puntos en un archivo de forma que no tienen otro punto dentro de x km con QGIS

Esta es probablemente una pregunta ingenua, pero estoy luchando como un nuevo usuario de QGIS.

Tengo una muy grande shapefile (de 275.000 puntos, pero puede dividir esto en unos 10 subregiones si es necesario para un procesamiento más rápido).

Quiero identificar todos los puntos que no tienen otro punto a menos de 200 metros y, a continuación, el código de cada uno de esos puntos con el valor "único" en un campo del archivo.

Para todos los otros puntos que son parte de los grupos I, a continuación, desea código de los "cluster".

Haber conseguido que, quiero, a continuación, seleccione sólo uno para cada grupo de manera aleatoria a retener en el conjunto de datos, descartando los demás.

Actualmente me estoy cayendo para lograr el paso 1 por lo que cualquier ayuda sería bienvenida.

10voto

sashkello Puntos 325

Usted puede utilizar el Vector > Herramientas de Análisis > Matriz de distancias, y una combinación para lograr lo que pides.

Voy a usar qgis datos de la muestra del aeropuerto de la capa de ejemplificar. Este es un pequeño conjunto de datos así que no estoy seguro de cómo va a ir con un 275000 puntos shapefile.

1. Crear una matriz de distancias usando su capa como de destino y de destino.

No olvides marcar la casilla "Utilizar sólo el más cercano (k) puntos de destino" y se establece a 1.

enter image description here

2. Abra el archivo CSV con añadir capa de texto delimitado

Elija "Coma" como delimitador, y establecer la geometría de la definición como no de la Geometría

enter image description here

3. Crear una combinación en la capa original con la tabla recién creada

enter image description here

4. El uso de la calculadora de Campo para rellenar un campo con los valores deseados

Debido a la combinación, ahora tenemos acceso a la distancia de los valores de la tabla desde dentro de los aeropuertos de la tabla de atributos, por lo tanto es bastante bastante fácil crear un campo nuevo y rellenar con "agrupado" y "únicos" valores dependiendo de la distancia que los valores de la matriz. a causa de mis datos de ejemplo he utilizado el valor 1200000 (1200 km), debe adaptarlo a su caso (200).

enter image description here

En el final de su capa debe tener un nuevo campo llamado point_type con diferentes valores de acuerdo a la distancia mínima del punto más cercano.

enter image description here

1voto

Droidnoid Puntos 141

También se podría tratar de un self join utilizando la NNJoin plugin de QGIS.

Para cada característica de la capa de entrada se encuentra la entidad más cercana (excepto de sí mismo en caso de un self join) e incluyen la distancia y todos los atributos de la entidad más cercana en el conjunto de datos generado. Podría tomar algún tiempo para que el conjunto de datos (he probado con un punto del conjunto de datos con cerca de 175000 características, y que toma algunos minutos...).

i-Ciencias.com

I-Ciencias es una comunidad de estudiantes y amantes de la ciencia en la que puedes resolver tus problemas y dudas.
Puedes consultar las preguntas de otros usuarios, hacer tus propias preguntas o resolver las de los demás.

Powered by:

X