Skip to article frontmatterSkip to article content
Site not loading correctly?

This may be due to an incorrect BASE_URL configuration. See the MyST Documentation for reference.

A.2 Extensión de ecosistemas naturales

Última actualización de este notebook: 03-04-2026 20:31

Objetivo del Indicador: medir la extensión (superficie) de los ecosistemas naturales y seminaturales y reportar como proporción del territorio nacional. Alcance Espacial: El reporte debe cubrir la totalidad de la jurisdicción nacional, compuesta por:

  • Territorio Continental e Insular: Basado en límites administrativos.

  • Territorio Marino: Basado en la Zona Económica Exclusiva (ZEE - 200 millas náuticas).

Metodología De Cálculo

El procesamiento se divide en dos flujos que luego se integran.

Flujo 1: Proccesamiento Terrestre (CONAF)

Paso 1.1: Filtrado de Áreas Naturales

Utilizar atributos USO y SUBUSO del Catastro CONAF.

CLASES A INCLUIR:

  • Bosque Nativo: (Todos los tipos).

  • Praderas y Matorrales: (Matorral, Estepa, Pradera natural).

  • Humedales: (Vegas, bofedales, pajonales).

  • Áreas desprovistas (Naturales): Desiertos, dunas, playas, nieves, glaciares, roqueríos.

  • Cuerpos de Agua: Lagos, lagunas, ríos.

CLASES A EXCLUIR (Descartar):

  • Terrenos Agrícolas, Plantaciones Forestales, Áreas Urbanas/Industriales, Embalses artificiales.

Paso 1.2: Intersección EFG Terrestre (esperar capa EFG)

Cruzar la capa filtrada de CONAF con la capa de Grupos Funcionales UICN para asignar etiquetas (ej. T2.2, T3.2).

Flujo 2: Procesamiento Marino

Paso 2.1: Generación de la Capa Marina

Utilizar el polígono de la ZEE (200 millas). Exclusión: Restar cualquier área que ya esté cubierta por el Catastro CONAF en la zona costera (ej. fiordos interiores o islas) para evitar doble contabilidad.

Paso 2.2: Intersección EFG Marino (esperar capa EFG)

Cruzar el polígono de la ZEE con la capa de Grupos Funcionales Marinos de la UICN. Esto clasificará el mar en grupos como M2 (Océano abierto pelágico), M3 (Mar profundo), etc.

Nota: Se asume que toda la extensión de la ZEE es “Ecosistema Natural” a menos que existan capas específicas de “infraestructura marina artificial” (granjas eólicas, plataformas) que deban restarse (Clase M4/MT3). Ante la falta de datos de infraestructura marina, se contabiliza la ZEE total.

Paso 3: Integración y Cálculo

Unificar los resultados del Flujo 1 y Flujo 2. Superficie Natural Total = (Sup. Natural CONAF) + (Sup. ZEE Natural). Superficie Total País = Sup. Terrestre Oficial + Sup. ZEE Oficial. Calcular proporción de áreas naturales en el territorio nacional

Capa 1: Observación y recolección

Fuentes de datos utilizados

A. Para Ecosistemas Terrestres y Costeros

Catastro de los Recursos Vegetacionales Nativos de Chile (CONAF) https://sit.conaf.cl/ Gestión de la Heterogeneidad Temporal : Dado que el Catastro CONAF no posee un año único de actualización nacional, se debe construir un “Mosaico Nacional”.

B. Para Ecosistemas Marinos

Capa vectorial de la Zona Económica Exclusiva (ZEE) de Chile. Consultar con Daniel por capa usada para indicador de áreas protegidas

Capa Complementaria

Capa de Grupos Funcionales de Ecosistemas (EFG - UICN). (Nota: Esta capa se encuentra en desarrollo).

Procesamiento de datos desde los descargables se realiza a través de un script de python. Los datos estandarizados se registran en una base de datos intermedia.

Las capas descargadas desde CONAF se procesan usando el script de Python process_raw.py. Los ecosistemas marinos se descargan y agregan a la base de datos usando el script calculate_marine.py. La capa complementaria se procesa y registra usando el script process_efg.py.

Capa 2: Análisis y síntesis

La desagregación final se realiza usando el script disaggregate_efg_continental.py.

%%time
with engine.connect() as conn:
    uso_subuso = pd.read_sql_table("uso_subuso", conn, schema="processed")
uso_subuso
WARNING:  database "7nr" has a collation version mismatch
DETAIL:  The database was created using collation version 2.41, but the operating system provides version 2.31.
HINT:  Rebuild all objects in this database that use the default collation and run ALTER DATABASE "7nr" REFRESH COLLATION VERSION, or build PostgreSQL with the right library version.
CPU times: user 117 ms, sys: 12.1 ms, total: 129 ms
Wall time: 2.5 s
Loading...

Capa 3: Repporte Digital

El área total se calcula sumando la columna superf_ha de los datos de CONAF filtrando por la columna de incluir:

%%time
with engine.connect() as conn:
    area_natural_terrestre = pd.read_sql_query("""
        SELECT incluir, sum(ct.superf_ha) AS "area"
        FROM processed.conaf_terrestre ct
        	JOIN processed.uso_subuso us
        		ON ct.id_uso = us.id_uso AND ct.id_subuso = us.id_subuso 
        GROUP BY incluir;
    """, conn)
area_natural = area_natural_terrestre.loc[1, 'area']
area_total = area_natural_terrestre["area"].sum()
area_natural_terrestre
CPU times: user 3.66 ms, sys: 3 ms, total: 6.66 ms
Wall time: 5.68 s
Loading...
Área natural total: 67208431.29 ha
Porcentaje con el área total: 88.80%

Para cada grupo funcional se elimina los polígonos no incluidos como áreas naturales utilizando un nuevo script de Python. Los resultados se almacenan en la base de datos intermedia. Los resultados se muestran consultando a dicha base de datos.

Loading...
%%time
with engine.connect() as conn:
    efg_terrestre = pd.read_sql_query("""
        SELECT ec."group", ec.superf_ha "area_total", eci.superf_ha "area_natural", eci.superf_ha / ec.superf_ha "porcentaje"
        FROM processed.efg_continental ec
        	JOIN processed.efg_continental_included eci
        		ON ec."group" = eci."group";
    """, conn)
efg_terrestre
CPU times: user 1.63 ms, sys: 900 μs, total: 2.53 ms
Wall time: 165 ms
Loading...
efg_terrestre = efg_terrestre.merge(efg_code_continental, left_on="group", right_on="EFG (Ecosystem Functional Group)", how="left")
efg_terrestre
Loading...

Limpieza final. Dado que no consideramos EFG antrópicos (los excluimos a través del catastro), de los EFG actuales hay 2 que debemos excluir, y restarlos de las áreas naturales. Estos son: F3.1 (Large reservoirs) y F3.2 (Constructed lacustrine wetlands). Asegurar que la superficie de estos dos EFG no se sume al total de “Áreas Naturales” que se reporte.

efg_terrestre.loc[
    efg_terrestre[efg_terrestre["Código EFG"].isin(["F3.1", "F3.2"])].index,
    ["area_natural", "porcentaje"]
] = 0
efg_terrestre
Loading...
Área Natural total: 67531297.03 ha
Área total: 75802764.30 ha

Agrupar por Realm:

Loading...
/var/folders/qk/s_6nzrrj3779504sfcscwfyr0000gn/T/ipykernel_11143/3660375567.py:12: FutureWarning: The behavior of DataFrame concatenation with empty or all-NA entries is deprecated. In a future version, this will no longer exclude empty or all-NA columns when determining the result dtypes. To retain the old behavior, exclude the relevant entries before the concat operation.
  indicator = pd.concat([
Loading...

Agregar indicadores desagregados por Ecosystem Functional Group:

Skipping F3.2 Constructed lacustrine wetlands
Skipping F3.1 Large reservoirs
Loading...

Ambos procesos se realizan en un script de python que elimina las intersecciones.

CPU times: user 1.58 ms, sys: 787 μs, total: 2.37 ms
Wall time: 166 ms
Loading...
Loading...
Loading...
efg_marino_total = efg_marino["area_natural"].sum()
print(f"Área natural marino: {efg_marino_total:.2f} ha")
Área natural marino: 357214024.72 ha

Agrupar por Realm:

Loading...
Loading...

Agregar indicadores desagregados por Ecosystem Functional Group:

Loading...
Área natural total (terrestre + marino): 424422456.01 ha