sábado, 23 de marzo de 2019

CREAR UN CAMPO AUTONUMÉRICO EN UNA TABLA CON UNA COLUMNA REORDENADA DISTINTA AL FID

Respondiendo a una pregunta de un lector del blog, vamos a ver como crear una columna autonmérica en una tabla donde hemos ordenado otra columna con un criterio distinto al FID, como vemos en este ejemplo:


Como vemos tenemos ordenada la columna área de menor a mayor, por lo que el campo FID se ha descolocado, entonces ahora queremos crear con este orden una columna nueva autonumérica correspondiente a este nuevo orden.
Después de comprobar que con Arcgis y Qgis no podemos realizar esta opción y la programación con python nos da siempre una autonumérica pero con el mismo orden que el FID, lo he realizado de una manera poco ortodoxa pero eficaz, siguiendo los siguientes pasos:

- Abrimos con Microsoft Excel el archivo .dbf del shapefile que contiene la tabla de atributos, y ordenamos la columna "área" de menor a mayor con la opción de Excel "ordenar y filtrar".


- Creamos una nueva columna que denominaremos "orden".
- En su primer campo ponemos un "1" y con el botón derecho del ratón pinchamos en la esquina inferior derecha y sin soltar arrastramos hasta el final de los campos de la tabla.


- Cuando soltamos el botón del ratón aparece un menú en Excel y elegimos en él "rellenar serie".


- Esto nos crea ya esta columna autonumérica que buscábamos con el orden de las áreas de menor a mayor, cuyo FID está desordenado.


- Guardamos la tabla en formato de Excel, quizás nos lo guarde con el nombre de "copia" y el nombre de la tabla.
- Abrimos Arcmap y abrimos el shapefile.


- Ahora abrimos en Arcmap la tabla de Excel que hemos creado, esto se nos abrirá solamente como tabla.


- Abrimos la tabla de atributos del shapefile y en la opciones de la tabla creamos un join con la tabla nueva cuyo campo común va a ser "área".


- Ya tenemos las tablas relacionadas y ya tenemos en la tabla del shapefile la nueva columna denominada "orden", con la nueva clasificación autonumérica basada en las áreas de menor a mayor.


- Ahora guardamos el shapefile con otro nombre mediante Data / export data.
- Abrimos el nuevo shapefile que hemos creado y abrimos la tabla de atributos, que debe tener los atributos del shapefile original más los del join, solamente nos queda eliminar los campos repetidos y dejar los campos originales más el campo "orden" que hemos creado.


Espero haber solucionado tu pregunta con este método, este proceso también se puede realizar con Qgis.






lunes, 28 de enero de 2019

SERIE COMPLEMENTOS QGIS: STATION LINES

En esta ocasión vamos a hablar de un complemento curioso que puede ser útil para algunos trabajos que necesiten dividir algunas líneas de los terrenos en segmentos equidistantes, pudiendo elegir nosotros la distancia entre cada segmento, estamos hablando del complemento Station Lines de Qgis.

En este ejemplo vamos a ver las distintas opciones que tenemos con este complemento, el cual debemos descargarlo e instalarlo desde Administrar e instalar complementos de la pestaña complementos.

En un shapefile de líneas podemos crear segmentos solamente en los bordes de ellas, para ello abrimos el complemento Station Lines, en Layers elegimos el shapefile de lineas en el que queremos trabajar, también podemos seleccionar solamente las líneas a las que queremos aplicarles dicho complemento seleccionándolas en el shapefile y activando la casilla Use only selected features, en Station Choices elegimos Vértices, y damos a aceptar.



Si queremos dividir las líneas en segmentos equidistantes abrimos el complemento Station Lines y ahora en Station Choices elegimos Distance, en el apartado Distance elegimos la distancia entre segmentos que podemos escogerla mediante un campo de nuestra tabla de atributos eligiendo la opción Field o ponerla a mano con la opción Value, en el apartado Side podemos elegir a que lado de la línea se dibujarán los segmentos, derecha, izquierda o centro, en el apartado Length podemos elegir la longitud que tendrá cada segmento, y en el apartado Angle podemos inclinar los segmentos los grados que elijamos, vamos a ver algunos ejemplos.









jueves, 18 de octubre de 2018

SERIE COMPLEMENTOS QGIS: RASTER INTERPOLATION

Vamos a ver otro complemento interesante y muy útil de QGIS como es "Raster interpolation", mediante el cual podemos interpolar los valores de un raster a una capa de puntos, obteniendo en cada punto el valor de la celda que se corresponde con el dicho raster.
En este ejemplo voy a utilizar un raster de datos de elevación y un shapefile de puntos aleatorios.
Para ello debemos instalar el complemento "raster interpolation" desde la pestaña complementos / administrar e instalar complementos.
Abrimos el raster del que queremos obtener los datos, en mi caso un MDT, y abrimos el shapefile de puntos a los cuales queremos interpolarlos.


Para poder realizar la interpolación y aplicar el complemento debemos crear un campo en la tabla de atributos del shapefile de tipo numérico y ponerlo en modo edición.
Abrimos el complemento raster interpolation y donde dice Raster layer ponemos nuestro MDT, elegimos la banda, en mi caso es "0", en Destination layer elegimos el shapefile de puntos, en destination field elegimos el campo numérico que hemos creado para que aparezcan los datos, donde pone interpolation method elegimos el método de interpolación por el cual queremos que se realice, aunque en los tres métodos obtenemos unos datos prácticamente iguales, se puede dejar por defecto "bi-linear", también podemos activar la casilla process only selected features para que se realice la interpolación solamente en los puntos que hayamos seleccionado, y damos a "go".


Entonces nos aparecerán los datos de altitud de cada punto en el campo que hemos creado en nuestra tabla de atributos.






sábado, 4 de agosto de 2018

SERIE COMPLEMENTOS QGIS: PROFILE TOOL

Vamos a ver otro complemento interesante y útil de QGIS como es "profile tool", con el cual podemos crear un perfil de un terreno a partir de un MDE y una polilínea, ya sea creada directamente o a partir de un shapefile.

Descargamos el complemento profile tool de complementos / administrar e instalar complementos, una vez instalado accedemos a él en la pestaña complementos / profile tool / terrain profile.

Abrimos el MDE que nos interese para crear nuestro perfil topográfico y tenemos dos opciones, o crear una polilínea directamente sobre él seleccionando temporary polyline, o abriendo un shapefile de polilíneas y seleccionando la que nos interese con selected polyline.


Una vez creado el perfil topográfico podemos editarlo un poco en tamaño, posición, y guardarlo en varios formatos como pdf, png, svg.


En la pestaña table podemos copiar en un documento de texto o una hoja de cálculo todas las cotas del perfil topográfico con sus coordenadas.




jueves, 28 de junio de 2018

SERIE COMPLEMENTOS QGIS: ONLINE ROUTING MAPPER

Vamos a ver en esta ocasión otro complemento muy básico pero muy útil en QGIS, hablo del complemento Online Routing Mapper, una herramienta que nos crea la ruta más corta, teniendo en cuenta las direcciones prohibidas, entre dos puntos que seleccionemos en el mapa.

Para ello es conveniente que tengamos abierto un mapa base, por ejemplo del complemento OpenLayers Plugin, y a partir de ahí abrimos Online Routing Mapper, seleccionamos el servicio online que aparecen en la lista de arriba, hacemos click en el botón verde de localización de inicio y seleccionamos el inicio de nuestra ruta en el mapa, y luego hacemos click en el botón rojo de localización final y seleccionamos el final de la ruta y damos a Run.


Aparecerá la solución de ruta más rápida entre los puntos seleccionados.


Haciendo click derecho en la ruta podemos guardarla como shapefile u otro formato que permita QGIS.




sábado, 19 de mayo de 2018

MODIFICAR VALORES DE UN SHAPEFILE DE MANERA REMOTA

Utilizando QGIS y pgAdmin III podemos modificar los datos de un shapefile de forma remota desde un pc a otro, una utilidad bastante interesante para empresas que deben modificar datos continuamente y desde lugares alejados.

Para ello necesitamos tener importado los datos del shapefile en pgAdmin III del pc1 como tabla en una database.



En el pc2 abrimos QGIS y añadimos el shapefile desde la opción Añadir capas postgis, para ello hacemos click en esta opción y nos aparece una ventana, en conexiones elegimos la database donde se encuentra la tabla a modificar de este shapefile previamente importado, esta database la tenemos que haber configurado previamente con su nombre, número del servidor del pc1, usuario y contraseña del pgAdmin III del pc1, hacemos click en conectar y rellenamos los datos de usuario y contraseña, nos aparecen los Schemas de la database y elegimos el que contiene nuestra tabla, normalmente el schema public, y seleccionamos la tabla y añadir.


Entonces se nos abre el shapefile de la tabla de nuestra database de pgAdmin III en QGIS.


Ya podemos abrir nuestra tabla en pgAdmin III del pc1 y modificar algún dato de la misma, entonces en el pc2 damos al botón de actualizar QGIS y se modificará el shapefile.










miércoles, 11 de abril de 2018

SERIE COMPLEMENTOS QGIS: NNJoin

En esta ocasión vemos otro de los complementos bastante útiles que tiene una función muy importante en los GIS, como son los "join".
El complemento "NNJoin" de QGIS crea un shapefile nuevo a partir de un join de dos shapefiles previamente cargados, esto es, nos crea un shapefile con los datos del archivo que coloquemos en la casilla "Imput vector layer", y los datos de los objetos que coincidan espacialmente con el shapefile de entrada del archivo que hemos colocado en la casilla "Join vector layer".
También podemos configurar el prefijo de los nombres que aparecerán en las columnas agregadas en la casilla "Join prefix".







En la tabla de atributos del shapefile que se ha creado, vemos los campos nuevos que se han agregado correspondientes a los campos del shapefile de puntos que han coincidido dentro de los polígonos del primer shapefile, denominados "join_id" y "join_nombres".