4 votos

QGIS crear un enlace de línea de funciones entre la tabla de puntos por los nombres de los puntos

Tengo dos CSV conjuntos de datos: points CSV y links CSV.
He generado fácilmente los nodos en QGIS, pero no sé cómo hacer que las líneas entre los puntos.
Debe haber un tutorial o post anterior - por favor, ayudar, aquí están los detalles:

  1. punto de datos CSV de ejemplo, los diez primeros puntos
"Manhole_ID","Manhole_No","Coord1","Coord2","Cover_Level","Inflow","No_Of_Pipes","Pipe1","Pipe2","Pipe3","Pipe4","Population"
"C15D","MHA1",98922.34,2872997.45,1394.85,100.00,1,1,0,0,0,0
"C15C","MHA2",98915.48,2872937.84,1392.28,100.00,2,1,2,0,0,0
"C158","MHA3",98910.56,2872895.19,1390.41,100.00,2,2,3,0,0,0
"C151","MHA4",98905.44,2872850.74,1388.69,0.00,3,3,4,21,0,0
"C150","MHA5",98894.93,2872759.60,1384.62,20.00,2,4,5,0,0,0
"C14F","MHA6",98883.49,2872660.26,1379.75,0.00,2,5,6,0,0,0
"C14C","MHA7",98872.04,2872560.92,1373.89,0.00,2,6,7,0,0,0
"C148","MHA8",98865.84,2872507.10,1370.33,20.00,2,7,8,0,0,0
"C145","MHA9",98865.28,2872502.26,1370.04,0.00,2,8,9,0,0,0
"C142","MHA10",98851.69,2872491.85,1369.28,0.00,3,9,10,24,0,0
  1. línea de datos CSV de ejemplo
"PIPE_ID","Pipe_No","Upstream_MH","Up_MH_Invert","Downstream_MH","Down_MH_Invert"
AEFB,1,MHA1,1393.55,MHA2,1390.99
AEFF,2,MHA2,1390.99,MHA3,1389.12
ADE4,3,MHA3,1389.12,MHA4,1387.4
ADE5,4,MHA4,1387.4,MHA5,1383.12
ADE6,5,MHA5,1383.12,MHA6,1378.25
ADE7,6,MHA6,1378.25,MHA7,1372.39
ADE8,7,MHA7,1372.39,MHA8,1368.83
ADE9,8,MHA8,1368.83,MHA9,1368.54
C128,9,MHA9,1368.54,MHA10,1367.27

Las líneas necesidad de utilizar los nombres de nodo upstream_mh = manhole_no y downstream_mh = manhole_no a dibujar la línea de características

4voto

efotinis Puntos 6338

Hay una herramienta en QGIS llamados "Puntos de las Rutas", lo puedes encontrar en
Processing-->Toolbox-->QGIS geoalgorithms --> Vector creation.

Será necesario preprocesar los datos, aunque. Esta herramienta necesita un campo de Grupo, en la que se basa sabe qué puntos pertenecen a una línea.

Así que esto es lo que usted necesita hacer:
En los puntos.csv duplicar sus puntos, con la excepción del primer y último punto. Agregar un campo llamado "Pipe_No" y rellene este campo con el tubo nr. Por ejemplo:

Manhole_ID,Manhole_No,Coord1,Coord2,Cover_Level,Inflow,No_Of_Pipes,Pipe1,Pipe2,Pipe3,Pipe4,Population,Pipe_No
C15D,MHA1,98922.34,2872997.45,1394.85,100,1,1,0,0,0,0,1
C15C,MHA2,98915.48,2872937.84,1392.28,100,2,1,2,0,0,0,1
C15C,MHA2,98915.48,2872937.84,1392.28,100,2,1,2,0,0,0,2
C158,MHA3,98910.56,2872895.19,1390.41,100,2,2,3,0,0,0,2
C158,MHA3,98910.56,2872895.19,1390.41,100,2,2,3,0,0,0,3
C151,MHA4,98905.44,2872850.74,1388.69,0,3,3,4,21,0,0,3
C151,MHA4,98905.44,2872850.74,1388.69,0,3,3,4,21,0,0,4
C150,MHA5,98894.93,2872759.6,1384.62,20,2,4,5,0,0,0,4
C150,MHA5,98894.93,2872759.6,1384.62,20,2,4,5,0,0,0,5
C14F,MHA6,98883.49,2872660.26,1379.75,0,2,5,6,0,0,0,5
C14F,MHA6,98883.49,2872660.26,1379.75,0,2,5,6,0,0,0,6
C14C,MHA7,98872.04,2872560.92,1373.89,0,2,6,7,0,0,0,6
C14C,MHA7,98872.04,2872560.92,1373.89,0,2,6,7,0,0,0,7
C148,MHA8,98865.84,2872507.1,1370.33,20,2,7,8,0,0,0,7
C148,MHA8,98865.84,2872507.1,1370.33,20,2,7,8,0,0,0,8
C145,MHA9,98865.28,2872502.26,1370.04,0,2,8,9,0,0,0,8
C145,MHA9,98865.28,2872502.26,1370.04,0,2,8,9,0,0,0,9
C142,MHA10,98851.69,2872491.85,1369.28,0,3,9,10,24,0,0,9

Si el conjunto de datos es demasiado grande, el trabajo con excel o con una base de datos.

La carga esta en QGIS, inicie la herramienta de rutas y llenar los campos como esto: Points to Path

Esto crea una capa de línea del punto de pares.
Ahora lo que necesita para unirse a esta capa con sus líneas.csv
Para hacer esto:
1. La importación de las líneas.csv pero sólo la tabla de atributos
2. Haz clic derecho en tu lines layer --> properties --> joins --> +
3. Elija el "grupo" campo de sus líneas de capa, y "Pipe_No" a partir de las líneas.csv para unirse a los datos.
Para la unión de la parte aquí es un buen tutorial.

3voto

Adisak Puntos 178

Tal vez más simple, si yo tengo derecho. Si MHA1 tiene que estar conectado a MHA2 que tiene que estar conectado a MHA3 y así sucesivamente, en este orden, a continuación, sólo añadir una columna de grp con un 1 en todos los campos, por ejemplo, (o lo que quieras) es sólo para el uso de una agregación en :

select makeline(p.geometry) as geom, p.grp from thepoints p
group by p.grp

enter image description here

era lo que quería ?

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