Lanzamos una segunda entrega con otras 10 Expresiones que todo el mundo debería conocer en QGIS.
Debido a la aceptación que tuvo la publicación “10 Expresiones qué todo usuario debería conocer en QGIS” nos animamos a realizar una segunda parte, recopilando otras 10 expresiones que nos pueden servir o sacar de algún apuro cuando trabajamos con QGIS, ya sea en el modo análisis y consulta de datos o cuando trabajamos con maquetaciones de mapas. Empecemos:
Tabla de contenidos
- 1 1.Programación de Fecha y Hora automática.
- 2 2. Búsqueda de registros (nombres o palabras clave) en campos.
- 3 3. Copiar un número concreto de valores empezando por derecha o izquierda (left or rigth)
- 4 4. Trazando línea desde etiqueta a geometría.
- 5 5. Convertir minúsculas en mayúsculas y viceversa.
- 6 6. Retorno de coordenadas origen-destino y tipo de geometría.
- 7 7. Reemplazar caracteres de un campo.
- 8 8. Operaciones sobre campos (mínimo y máximo).
- 9 9. Coordenadas de un polígono.
- 10 10. Localizar filas duplicadas.
- 11 Compártelo:
1.Programación de Fecha y Hora automática.
Una expresión que no puede faltar en ninguna maquetación es la fecha referida a la elaboración o emisión del plano. En nuestro cajetín podremos incorporar la fecha actualizada ligada a la última modificación practicada en el diseño mediante la siguiente expresión upper(format_date($now,’dd.mm.yyyy’)). Existen diferentes formatos de fecha por los que optar, yo he escogido el siguiente:
- format_date(‘2012-05-15′,’dd.MM.yyyy’) ? ‘15.05.2012’
2. Búsqueda de registros (nombres o palabras clave) en campos.
Podremos localizar por expresión cualquier registro que cumpla con un nombre o palabra concreta utilizando la siguiente expresión “Campo” LIKE ‘%nombre%’. La siguiente imagen muestra la búsqueda de la palabra alquibla en un campo concreto.
3. Copiar un número concreto de valores empezando por derecha o izquierda (left or rigth)
En esta ocasión hemos querido mostrar la posibilidad de copiar una serie de registros de un campo determinado a otro campo, teniendo como referencia la primera o última letra. Para que lo entendamos mejor, en la siguiente capa tengo unas parcelas catastrales con una serie de información, entre ellas un campo con la referencia catastral completa (20 dígitos). La idea es crear otro campo en la que aparezcan los primeros 14 dígitos de esta referencia para poder hacer una serie de consultas con otras capas descargadas de la Sede Electrónica. ¿Cómo lo hacemos? Utilizando la siguiente expresión, dónde añadiremos el origen del valor y desde ahí limitando el copiado a 14 caracteres: left(“REFCAT,14”)
4. Trazando línea desde etiqueta a geometría.
Tenemos la posibilidad de implementar en nuestras etiquetas una flecha que localice el centroide de un punto hasta el lugar dónde se desplace la etiqueta. Solo tendremos que configurar en simbología nuestro marcado como “Generador de Geometrías” y pasarle la siguiente expresión:
make_line($geometry,
make_point(«auxiliary_storage_labeling_positionx»,
«auxiliary_storage_labeling_positiony»))
Seguidamente editamos la ubicación de la etiqueta para las coordenadas X e Y guardando los datos en Proyecto y pasamos a desplazarla mediante las herramientas de edición de etiquetado.
5. Convertir minúsculas en mayúsculas y viceversa.
En muchas ocasiones necesitamos depurar los datos que nos vienen en una capa o tabla heredada para ajustarlos a nuestras necesidades. Un ejemplo sería convertir una serie de registros de un campo concreto que se encuentran en mayúsculas a minúsculas o el caso contrario. La expresión para poder realizar la conversión es el siguiente:
- Mayúsculas a minúsculas: lower(“Campo”)
- Minúsculas a mayúsculas: upper(“Campo”)
6. Retorno de coordenadas origen-destino y tipo de geometría.
La siguiente función nos devolverá la geometría transformada desde un sistema de coordenadas origen a otro sistema destino. En este sentido y partiendo de una capa en el sistema de referencia 25830 me interesaría obtener un campo dónde me indique el tipo de geometría y las coordenadas en el sistema de referencia WGS84. Para ello utilizaremos la siguiente sentencia:
geom_to_wkt ( transform( $geometry, ‘EPSG:25830’, ‘EPSG:4326’))
7. Reemplazar caracteres de un campo.
La opción “replace” nos permite sustituir cualquier carácter de un campo por el que nosotros definamos. Se trata de una operación que utilizamos con bastante asiduidad en el mantenimiento y gestión de información. En el siguiente caso a través de la sentencia replace( «Cod_Distri» ,array(‘-‘),array(‘.’)) fuerzo al campo “Cod_Distri” a que sustituya el valor ‘-‘ por un ‘.’.
8. Operaciones sobre campos (mínimo y máximo).
En QGIS también es posible realizar operaciones matemáticas sobre campos, pero ojo, deben estar en formato numérico. La expresión min y max devuelve el valor más pequeño y más grande de un conjunto de datos.
En el siguiente ejemplo hemos utilizado una capa con información temporal sobre el número de incendios a nivel provincial en los años 2001-2013. Las expresiones comentadas nos permiten averiguar el número de incendios mínimo y máximo ocurridos en esa zona de estudio.
9. Coordenadas de un polígono.
Mediante la sentencia geom_to_wkt($geometry) podemos obtener un campo con el tipo de geometría que contiene la capa y las coordenadas de los vértices que conforman el polígono.
10. Localizar filas duplicadas.
Unos de los trabajos habituales en todo proyecto GIS es eliminar información duplicada que pueden presentar nuestros datos y que puede suponer un inconveniente. La expresión Count (1, «attribute»)>1 identifica los atributos duplicados de cualquier campo de entrada.
El siguiente ejemplo nos sirve para identificar los vértices de una parcela que se encuentran duplicados, introduciendo como campos de entrada las Coordenadas X e Y.
Hola!!No logro eliminar los elementos duplicados en la tabla de atributos. Ni siquiera seleccionarlos como decis arriba!!! Alguien puede ayudarme?
Hola Noelia,
¿Has utilizado la sentencia del punto 10 y has colocado el nombre del campo en el espacio <>?
Debería de funcionarte.
Un saludo.
buenas ENRIQUEE, mi caso es DATO REPETIDO EN UNA COLUMNA..¿cómo puedo localizarlo?
Hola!
Cómo se puede borrar atributos sin que se elimine el poligono??
Muchas gracias!