Calcula el área y perímetro en QGIS

He observado que algunos tutoriales nos brindan una forma de calcular el área y perímetro de un polígono usando QGIS. Sin embargo, nos damos con la sorpresa que no calculamos el área “correctamente”.  ¿Por qué pasa esto?.

En este pequeño tutorial aprenderemos a calcular el área en QGIS, porqué nos da un resultado diferente y cómo lo solucionamos.

Calculando áreas

Para este tutorial, usaremos este archivo Shapefile (descárgalo aquí) que corresponde a un polígono de 100x100m, es decir 1 hectárea.

  • Abrimos QGIS e importamos la capa.
CO 
eo 
eo 
Navegador 
Calcular el área 
shp 
Poligono_Area.shp 
Capas 
QGIS 
Escala 1:874 
abc 
e:lv 
abc 
abc 
F' 43) 
Coordenada 313293.3,8613102.1 
ab 
eo 
Buscar... 
Caja de herramientas de Procesos 
cu 
Poliqono Area 
Q Escriba para localizar (#K) 
Usado recientemente 
Poligonizar 
Reproyectar capa 
Análisis de redes 
Análisis de vector 
Análisis del terreno ráster 
Análisis ráster 
Base de datos 
Cartografía 
Creación de vectores 
Geometría vectorial 
Gráficos 
Herramientas de archivo 
Herramientas de capa 
Herramientas ráster 
Interpolación 
Selección vectorial 
Superposición vectorial 
Tabla vectorial 
Vector general 
GDAL 
GRASS 
Modelos 
SAGA 
Scripts 
Eliminada una entrada 
Amplificador 
100% 
Rotación 
0,00 
Representar 
EPSG:32718
  • Antes que nada, tenemos en cuenta que siempre trabajamos capas georreferenciadas. En este caso, la capa tiene una proyección en WGS84 Zona 18 Sur (EPSG:32718 – WGS 84 / UTM zone 18 S). Para revisar que sistema de coordenadas tiene tu capa, hacemos clic derecho en la capa y vamos a propiedades, luego hacemos clic en Fuente y vemos en la sección de Sistema de referencia de coordenadas.

Nota: Recuerden que el Sistema de Referencia del proyecto se actualiza con la capa, si este no cuenta con un sistema de referencia.

e oe 
ñ 
Información 
Fuente 
Simbología 
Etiquetas 
Diagramas 
Vista 3D 
Campos 
Formulario de 
atributos 
Uniones 
Amacenamiento 
auxiliar 
Acciones 
Visualizar 
Representación 
Variables 
Metadatos 
Dependencias 
Propiedades de la capa - Poligono_Area I Fuente 
v Configuración 
Nombre de la capa Poligono_Area 
mostrada como 
Codificación de la fuente de datos 
UTF-8 
v Sistema de referencia de coordenadas 
Establecer sistema de referencia de coordenadas del origen 
EPSG:32718 - WGS 84 / UTM zone 18S 
Crear índice espacial 
O 
Actualizar extensión 
v Filtro de objeto del proveedor 
Poligono_Area 
Constructor de consultas 
Help 
Estilo 
Apply 
Cancel 
OK
  • Cerramos la ventana de propiedades y vamos a hacer clic derecho en la capa y seleccionamos Abrir tabla de atributos.
  • Observamos la tabla de atributos del polígono. Por el momento tiene cuatro campos vacíos. Area_ha, Area_ha_2, Per_1 y Per_2

Nota: A fin de que sea más dinámico el tema, calcularemos el área en hectáreas y a cuatro decimales.

O 
QGIS 
50 sa 
ab 
abc 
e:lv 
a bc 
a bc 
Navegador 
Calcular el área 
shp 
Poligono_Area.shp 
Capas 
Caja de herramientas de Procesos 
cu 
Poliqono Area 
Q Escriba para localizar (#K) 
Buscar... 
Usado recientemente 
Poligonizar 
Reproyectar capa 
Análisis de redes 
Análisis de vector 
Análisis del terreno ráster 
Análisis ráster 
Base de datos 
Cartografía 
e oe 
FID 
1 
Area_ha 
Q 
Area_ha_2 
Poligono_Area :: Objetos totales: 1, Filtrados: 1, Seleccionados: O 
Per_l 
Escala 1:1,748 
Per_2 
Mostrar todos los objetos espaciales 
O objetos espaciales s Coordenada 313202.5,8613033.1 
Amplificador 
100% 
Rotación 
0,00 
Representar 
EPSG:32718
  • Para este caso, calcularemos el área y perímetro como nos indican varios tutoriales de QGIS en los campos Area_ha y Per_1 respectivamente. Primero calcularemos el área.
  • Abrimos la Calculadora de Campos y seguimos los siguientes pasos.
O 
QGIS 
50 sa 
eo 
eo 
Navegador 
Calcular el área 
shp 
Poligono_Area.shp 
Capas 
cu 
CO 
e oe 
FID 
1 
ab 
abc 
e:lv 
abc 
a bc 
eo 
Buscar... 
Caja de herramientas de Procesos 
Usado recientemente 
Poligonizar 
Reproyectar capa 
Análisis de redes 
Análisis de vector 
Análisis del terreno ráster 
Análisis ráster 
Base de datos 
Cartografía 
Poliqono Area 
Q Escriba para localizar (#K) 
Area_ha 
Q 
Area_ha_2 
Poligono_Area :: Objetos totales: 1, Filtrados: 1, Seleccionados: O 
Per_l 
Per_2 
Abrir calculadora de campos (Ctrl+M) 
Mostrar todos los objetos espaciales 
O objetos espacialess Coordenada 313507.8,8613033.7 
Escala 
1:1,748 
Amplificador 
100% 
Rotación 
0,00 
EPSG:32718 
Representar
  • Primero, seleccionamos la opción de Actualizar Campo Existente.
  • Segundo, vamos a seleccionar el campo Area_ha.
  • Tercero, en el buscador de funciones y dentro de la sección de Geometría, seleccionamos la función $area.
  • Cuarto, veremos que aparece en el campo de Expresión la función seleccionada. Como el resultado que obtenemos es en metros cuadrados, la dividimos entre 10 000 para que sea en hectáreas.
  • Quinto, presionamos el botón Ok para calcular el área.
e oe 
Actualizar sólo O objetos espaciales seleccionados 
Q Calculadora de Campo 
Actualizar cam o existente 
Crear un campo nuevo 
Crear campo virtual 
Nombre del campo de salida 
Tipo del campo de salida 
2 
Número entero (entero) 
Longitud del campo de salida 10 
Expresión 
Editor de funciones 
Precisión 
'\n' 
area 
4 
Area_ha 
Buscar 
concoraanaa aprox... 
Condicionales 
Conversiones 
Fecha y Hora 
General 
Geometría 
$area 
area 
azimuth 
boundary 
bounds 
bounds_height 
bounds_width 
buffer 
función $area 
Devuelve el área del 
objeto actual. El área 
calculada por esta 
función respeta tanto la 
configuración del 
elipsoide del proyecto 
actual como la de las 
unidades de área. Por 
ejemplo, si se ha 
establecido un elipsoide 
para el proyecto, 
entonces el área 
calculada será elipsoidal y 
si no se ha establecido 
ningún elipsoide, 
entonces el área 
Vista preliminar de la salida: 10121.78125169808 
Está editando información de esta capa, pero la capa no está actualmente en modo edición. Si pulsa Aceptar se activará 
automáticamente el modo de edición. 
Help 
Cancel 
OK
e oe 
Actualizar sólo O objetos espaciales seleccionados 
Crear un campo nuevo 
Crear campo virtual 
Nombre del campo de salida 
Tipo del campo de salida 
Número entero (entero) 
Longitud del campo de salida 10 
Precisión 
Expresión 
10004 
$area / 
Editor de funciones 
'\n' 
1.0121781251698079 
Q Calculadora de Campo 
Actualizar campo existente 
Area_ha 
Buscar 
row number 
Aggregates 
Arrays 
Cadena 
Campos y valores 
Capas de mapa 
Color 
Concordancia aproxi... 
Condicionales 
Conversiones 
Fecha y Hora 
General 
Geometría 
Maps 
Matemáticas 
Operadores 
Reciente (fieldcalc) 
Record and Attributes 
O 
función $area 
Devuelve el área del 
objeto actual. El área 
calculada por esta 
función respeta tanto la 
configuración del 
elipsoide del proyecto 
actual como la de las 
unidades de área. Por 
ejemplo, si se ha 
establecido un elipsoide 
para el proyecto, 
entonces el área 
calculada será elipsoidal y 
si no se ha establecido 
ningún elipsoide, 
entonces el área 
calculada será 
planimétrica. 
Sintaxis 
Vista preliminar de la salida: 
Help 
Cancel 
OK
  • Verán que ya aparece en el campo Area_ha el resultado. Aún no analicemos el resultado, hagamos lo mismo con el perímetro. Lo calcularemos en el campo Per_1 y la función que se utiliza es $perimeter.
e oe 
Actualizar sólo O objetos espaciales seleccionados 
Crear un campo nuevo 
Crear campo virtual 
Nombre del campo de salida 
Tipo del campo de salida 
Número entero (entero) 
Longitud del campo de salida 10 
Precisión 
Expresión 
perimeter 
Editor de funciones 
'\n' 
399.98747890144125 
Q Calculadora de Campo 
Actualizar campo existente 
Per_l 
Buscar 
num_geometries 
num_interior_rings 
num_points 
num_rings 
offset_curve 
order_parts 
oriented_bbox 
$perimeter 
perme er 
point_n 
point_on_surface 
pole_of_inaccessib... 
project 
relate 
reverse 
segments_to_lines 
shortest_line 
función $perimeter 
Devuelve la longitud del 
perímetro del objeto 
actual. El perímetro 
calculado por esta 
función respeta tanto la 
configuración del 
elipsoide del proyecto 
actual como la de las 
unidades de distancia. 
Por ejemplo, si se ha 
establecido un elipsoide 
para el proyecto, 
entonces el perímetro 
calculado será elipsoidal 
y si no se ha establecido 
ningún elipsoide, 
entonces el perímetro 
Vista preliminar de la salida: 
Help 
calculado será 
planimétrico. 
Cancel 
OK

Analizando los Datos

Ahora analicemos los datos. El área que nos aparece es de 1.0121 ha, pero sabemos que el polígono es de 100x100m, es decir 1 hectárea (1.0000 ha) y el perímetro que calculamos es 399.99m, pero debería ser 400.00m. ¿A qué se debe esto?

La respuesta en nuestros ojos

Si leemos la descripción de cada una de las funciones, observaremos que indica que el cálculo, tanto del área como del perímetro, respeta la configuración del elipsoide del proyecto actual. 

En resumen…

Esto quiere decir que si el elipsoide del proyecto (ojo, no de la capa), tiene un sistema de referencia asignado, nos calculará en base al elipsoide del sistema de referencia establecido. Caso contrario, el área y el perímetro calculados serán planimétricos. 

En pocas palabras, si quitamos el sistema de referencia del proyecto, podremos calcular el área que regularmente hemos calculado en otras herramientas, como es el caso de ArcGIS, AutoCAD, etc.

Calculando el área y perímetro planimétrico sin modificar el proyecto

Existe otro método, sin afectar el sistema de referencia del proyecto y caer en cualquier error u omisión y luego no te autocastigues por no saber que le hiciste al proyecto ya que mañana era el día de entrega.

  • Para este tutorial lo calcularemos directamente sin tocar nada de la configuración del proyecto. Para ello, abrimos nuevamente la tabla de atributos y abrimos la calculadora de Campos. 
  • Dentro de la sección expresión, agregamos lo siguiente:
area($geometry)/10000
e oe 
Actualizar sólo O objetos espaciales seleccionados 
Crear un campo nuevo 
Crear campo virtual 
Nombre del campo de salida 
Tipo del campo de salida 
Número entero (entero) 
Longitud del campo de salida 10 
Precisión 
Expresión 
Editor de funciones 
'\n' 
0.9999999999988358 
Q Calculadora de Campo 
a 
Actualizar campo existente 
Area_ha_2 
Buscar 
row number 
Aggregates 
Arrays 
Cadena 
Campos y valores 
Capas de mapa 
Color 
10004 
area($geometry)/ 
Vista preliminar de la salida: 
Help 
grupo Aggregates 
Contiene funciones que 
agregan valores sobre capas 
y campos. 
Concordancia aproximada 
O 
Condicionales 
Conversiones 
Fecha y Hora 
General 
Geometría 
Maps 
Matemáticas 
Operadores 
Reciente (fieldcalc) 
Record and Attributes 
Cancel 
OK

Lo que hace esta expresión es calcular el área planimétrica, es decir, sin considerar el elipsoide del sistema de referencia.

Nota: Observamos que en Vista Preliminar muestra 0.9999, pero como indica es preliminar, no se alarmen. Hacemos clic en Ok y veremos el siguiente resultado. 

Q 
Area_ha 
Poligono_Area :: Objetos totales: 1, Filtrados: 1, Seleccionados: O 
Area_ha 2 
Actualizar todo 
Actualizar lo seleccionado 
FID 
1 
1.0000 
Per_l 
399.99 
Per_2 
10000.00 
1.0122 
Mostrar todos los objetos espaciales
  • Ahora sí, el área que obtenemos es de 1 hectárea (1.0000 ha). Luego, calculamos el perímetro, entrando nuevamente a la Calculadora de Campos y escribimos lo siguiente para el campo Per_2:
perimeter($geometry)
FID 
Poligono_Area :: Objetos totales: 1, Filtrados: 1, Seleccionados: O 
Area_ha 2 
Q 
Actualizar todo 
Actualizar lo seleccionado 
1 
Area_ha 
1.0122 
1.0000 
Per_l 
399.99 
Per_2 
400.00 
Mostrar todos los objetos espaciales

Ahora sí, el cálculo del perímetro también coincide con el valor estimado (400.00m).

Podemos ver las diferencias entre ambos cálculos de área y de perímetro que nos ofrece QGIS.

¡Listo!, ahora ya sabemos las diferencias entre las formas de calcular el área y perímetro en QGIS, recordemos siempre tener cuidado al momento de calcular dichos parámetros.

¡No te olvides! Si tienen preguntas o algún aporte, déjalo en los comentarios.

¡Recuerda compartir el conocimiento!

Leave a Comment

Su dirección de correo no se hará público. Los campos requeridos están marcados *