Autor:
José Esquina (makarioe@gmail.com)
2025-03-14
Título¶
Riqueza de Especies del Género Coffea en América: Un Análisis Geoespacial de Registros de Presencia con un Estudio de Caso en Atitlán, Guatemala¶
Resumen:¶
El presente estudio analiza la distribución y riqueza de especies del género Coffea en el continente americano mediante el uso de registros de presencia disponibles públicamente. A través de un análisis geoespacial implementado en Python, se exploró la riqueza de especies a nivel de país, revelando patrones de diversidad en América del Norte y del Sur. El estudio se enfocó posteriormente en Guatemala, un importante productor de café, visualizando su división administrativa y destacando la región de Atitlán, conocida por su café de alta calidad. Finalmente, se realizó un análisis del Índice de Vegetación de Diferencia Normalizada (NDVI) en una finca específica en Atitlán, Finca Paponjila, para evaluar el desarrollo vegetativo de los cafetos. Los resultados muestran la distribución de especies de Coffea a nivel continental, la importancia de Guatemala como centro productor y la variabilidad en la salud de la vegetación en una finca representativa de la región de Atitlán, lo que subraya la influencia de factores geográficos y ambientales en la distribución y el estado del cultivo de café.
Introducción¶
El café (Coffea sp.) es una de las bebidas más consumidas a nivel mundial y representa un motor económico fundamental para muchas regiones tropicales, especialmente en América Latina. El género Coffea comprende una amplia diversidad de especies, de las cuales Coffea arabica y Coffea canephora (robusta) son las más cultivadas a nivel comercial, valoradas por sus distintos perfiles de sabor y características agronómicas. La distribución y la diversidad de estas y otras especies del género están influenciadas por una compleja interacción de factores ambientales, geográficos e históricos.
El continente americano alberga una rica diversidad de especies de Coffea, tanto cultivadas como silvestres. Entre los países productores destacados se encuentra Guatemala, cuya geografía montañosa, suelos volcánicos y microclimas diversos contribuyen a la producción de café de alta calidad con perfiles de sabor distintivos, particularmente en regiones como Atitlán.
La región de Atitlán, ubicada en el altiplano occidental de Guatemala, es reconocida mundialmente por su café de especialidad. Las condiciones únicas de esta zona, incluyendo altitudes entre 1,200 y 2,000 metros sobre el nivel del mar, precipitaciones anuales entre 1200 y 1800 mm, temperaturas promedio de 16-22°C y suelos volcánicos, crean un entorno ideal para el cultivo de café arábica de alta calidad. Para evaluar la salud y el desarrollo de la vegetación de los cafetos, se utilizó el Índice de Vegetación de Diferencia Normalizada (NDVI) de una finca modelo ubicada en la region de Atitlán con el fin de ver es estado de los cafetos en la actualidad. El NDVI, calculado a partir de imágenes satelitales, proporciona una medida cuantitativa de la biomasa verde y puede indicar áreas con vegetación sana y vigorosa.
En este contexto, los principales objetivos de este estudio son:
- Analizar la distribución y riqueza de especies del género Coffea en el continente americano utilizando registros de presencia disponibles públicamente.
- Presentar la región de Atitlán como una zona clave para la producción de café en Guatemala.
- Evaluar el estado de la vegetación de los cafetos en una finca específica en Atitlán (Finca Paponjila) utilizando el Índice de Vegetación de Diferencia Normalizada (NDVI).
Objetivo general¶
Analizar la distribución, riqueza y estado de la vegetación del género Coffea en el continente americano, con un enfoque específico en Guatemala y la región de Atitlán.
Objetivos específicos¶
- Analizar la distribución y riqueza de especies del género Coffea en el continente americano utilizando registros de presencia disponibles públicamente.
- Presentar la región de Atitlán como una zona clave para la producción de café en Guatemala.
- Evaluar el estado de la vegetación de los cafetos en una finca modelo en Atitlán (Finca Paponjila) utilizando el Índice de Vegetación de Diferencia Normalizada (NDVI).
Materiales y Métodos¶
Datos de Presencia de Coffea¶
Se utilizaron registros de presencia de especies del género Coffea obtenidos del Global Biodiversity Information Facility (GBIF) a través de un archivo CSV alojado en GitHub (https://raw.githubusercontent.com/Corner002/cafe/refs/heads/main/cafe.csv). El conjunto de datos contenía información sobre la ubicación geográfica (latitud y longitud) y la identificación de las especies.
Datos Geográficos¶
Se emplearon las siguientes capas de datos geográficos vectoriales:
- Países del mundo: Obtenida de Natural Earth a través de un archivo GeoPackage alojado en GitHub (https://raw.githubusercontent.com/datos-geoespaciales-biodiversidad/python/refs/heads/main/datos/otros/naturalearth/paises.gpkg). Se utilizó para delimitar el continente americano y realizar análisis a nivel de país.
- Departamentos de Guatemala: Obtenida de un archivo GeoPackage alojado en GitHub (https://raw.githubusercontent.com/Corner002/departamentos/main/Departementos_gt.gpkg). Se utilizó para visualizar la división administrativa de Guatemala.
Datos Raster de Precipitación¶
Se utilizó una capa raster de precipitación media anual global (WorldClim versión 2.1 a 10 minutos de resolución) obtenida como un archivo GeoTIFF desde GitHub (https://github.com/datos-geoespaciales-biodiversidad/python/raw/refs/heads/main/datos/clima/worldclim/2.1-10m-bio/wc2.1_10m_bio_12.tif).
Datos Raster NDVI de Finca Paponjila¶
Se utilizó una imagen raster multiespectral para el cálculo del Índice de Vegetación de Diferencia Normalizada (NDVI) en la Finca Paponjila, obtenida como un archivo GeoTIFF desde GitHub (https://raw.githubusercontent.com/Corner002/raster_coffe/main/raster_cafe_01.tif).
Área de Estudio¶
El estudio se centró en el continente americano para el análisis general de la riqueza de especies de Coffea, con un enfoque particular en Guatemala y la región de Atitlán. El análisis de NDVI se realizó específicamente para la Finca Paponjila, ubicada en Atitlán, Guatemala (coordenadas aproximadas: 14.6118, -91.1360).
Procedimientos y Análisis¶
El análisis se llevó a cabo utilizando el lenguaje de programación Python (versión 3) y las siguientes bibliotecas:
- pandas: Para la manipulación y análisis de datos tabulares.
- geopandas: Para el manejo y análisis de datos geoespaciales vectoriales. Se realizaron operaciones de creación de GeoDataFrames, filtrado geográfico y unión espacial (spatial join) entre los registros de presencia de Coffea y la capa de países.
- folium: Para la creación de mapas interactivos, incluyendo la visualización de la riqueza de especies por país y los registros de presencia de Coffea.
- matplotlib.pyplot: Para la generación de gráficos y la visualización del NDVI.
- plotly.express: Para la creación de gráficos interactivos de barras de riqueza de especies por país y la evolución de los registros a lo largo del tiempo (si lo incluiste).
- rasterio : Para la lectura y manipulación de datos raster, incluyendo la carga de la capa de precipitación y la imagen para el cálculo del NDVI. Se realizó el cálculo del NDVI utilizando las bandas roja e infrarroja cercana de la imagen Sentinel.
- leafmap: Para la creación de mapas interactivos centrados en Guatemala y el Lago de Atitlán, utilizando capas base de satélite.
Los principales pasos del análisis incluyeron:
- Filtrado de los registros de presencia de Coffea para el continente americano.
- Unión espacial de los registros de presencia con la capa de países para determinar la ubicación por país.
- Cálculo de la riqueza de especies de Coffea (número de especies únicas) por país.
- Visualización de la riqueza de especies en un mapa interactivo.
- Visualización de la riqueza de especies en un gráfico de barras.
- Visualización de la precipitación anual en América.
- Visualización de los departamentos de Guatemala.
- Visualización del Lago de Atitlán y sus alrededores.
- Cálculo del NDVI para la Finca Paponjila utilizando las bandas roja e infrarroja cercana.
- Visualización del mapa NDVI de la Finca Paponjila.
Se utilizaron los sistemas de referencia de coordenadas nativos de cada dataset, siendo la mayoría en EPSG:4326 (WGS 84) para los datos vectoriales. Para los datos raster, se respetó el CRS indicado en los metadatos de los archivos.
Resultados¶
Aspectos importantes del género Coffea¶
El café pertenece a la familia botánica de
las Rubiáceas de las cuales se han reportado
unos 500 géneros y más de 6,000 especies. No
obstante, las especies más importantes desde el
punto de vista comercial pertenecen al género
Coffea
El café es un arbusto perenne cuyo ciclo de vida a nivel comercial puede alcanzar una edad promedio de 25 años, dependiendo de las condiciones y del sistema de cultivo
.jpg)
Figura 1. Granos de café maduro
Algunas especies de café comerciales¶
1. Coffea arábica (Arábica):¶
- Es la especie más popular y representa aproximadamente el 60% de la producción mundial.
- Se caracteriza por su sabor suave, aromático y con notas de acidez.
- Requiere condiciones de cultivo específicas, como altitudes elevadas y climas templados.
Figura 2. Café arábica de la variedad Borbón
2. Coffea canephora (Robusta):¶
- Es la segunda especie más cultivada, representando alrededor del 40% de la producción mundial.
- Tiene un sabor más fuerte y amargo que el Arábica, con mayor contenido de cafeína.
- Es más resistente a las enfermedades y condiciones climáticas adversas.
Figura 3. Café robusta
3. Coffea liberica (Libérica):¶
- Aunque menos común, se cultiva en algunas regiones de África y Asia. -Tiene un sabor distintivo, a menudo descrito como ahumado y con notas de madera.

Figura 4. Coffea libérica
4. Coffea excelsa (Excelsa):¶
- Es una especie que se encuentra principalmente en el sudeste asiático.
- Esta especie representa un pequeño porcentaje de la producción mundial.

Figura 5. Coffea excelsa
Existen especies, aunque no son comunes en el mercado, son valiosas por su diversidad genética y su potencial para futuras investigaciones y desarrollos en la industria del café. Entre las que se destacan:
Coffea eugenioides: Es considerada una especie ancestral del café arábica, produce granos con un sabor dulce y delicado, pero su producción es muy baja. Se encuentra principalmente en África Oriental.
Figura 6. Coffea eugenioides
\
Coffea stenophylla: Originaria de África Occidental, destaca por su tolerancia a altas temperaturas. Sus granos ofrecen un perfil de sabor frutal y dulce
Figura 7. Coffea stenophylla
\
Coffea racemosa: Nativa de Mozambique, Se caracteriza por su bajo contenido de cafeína. Su sabor es suave y dulce, con notas florales.
Figura 8. Coffea racemosa
\
Coffea dewevrei: Ofrece un sabor particular, a menudo descrito como afrutado y con notas de panadería. Se cultiva en algunas regiones de África y Asia
Figura 9. Coffea dewevrei
El análisis geoespacial de los registros de presencia del género Coffea en el continente americano reveló patrones de riqueza de especies variables a lo largo de la región.
Riqueza de Especies de Coffea en América:¶
El mapa interactivo (Figura 10) muestra la riqueza de especies de Coffea por país. Los países con mayor número de especies únicas se observan con una coloración más intensa en la escala. Se destaca que Brasil y Colombia presentan la mayor concentración de especies de Coffea 13 y 4 respectivamente. Por otro lado, países como Belice, Venezuela, Suriname, Bolivia, Paraguay y Argentian solo presenten una especie de coffea (Figura 11).
Para el caso de Guatemala se encuentra 2 especies el Coffea arábica (Arábica) y el Coffea canephora (Robusta)
# Carga de geopandas con el alias gdp
import geopandas as gpd
# Carga de pandas con el alias pd
import pandas as pd
# Carga de folium
import folium
# Carga de matplotlib
import matplotlib.pyplot as plt
# Importar Plotly Express
import plotly.express as px
# Biblioteca requerida para mapas interactivos
!pip install mapclassify --quiet
import mapclassify
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0/59.1 kB ? eta -:--:-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.1/59.1 kB 2.1 MB/s eta 0:00:00
# Carga de un archivo CSV
cafe_df = pd.read_csv(
"https://raw.githubusercontent.com/Corner002/cafe/refs/heads/main/cafe.csv",
sep="\t"
)
# Crear un GeoDataFrame a partir del DataFrame
cafe_gdf = gpd.GeoDataFrame(
cafe_df,
geometry=gpd.points_from_xy(cafe_df.decimalLongitude, cafe_df.decimalLatitude),
crs='EPSG:4326'
)
# Crear un geodataframe con datos y polígonos de paises
paises_gdf = gpd.read_file(
'https://raw.githubusercontent.com/datos-geoespaciales-biodiversidad/python/refs/heads/main/datos/otros/naturalearth/paises.gpkg'
)
# Filtrar los datos
cafe_america_gdf = cafe_gdf[(cafe_gdf['decimalLongitude'] < 0) & (cafe_gdf['decimalLatitude'] < 16)]
paises_america_gdf = paises_gdf[(paises_gdf['CONTINENT'] == 'South America') | (paises_gdf['CONTINENT'] == 'North America')]
# Definir un índice
paises_america_gdf.set_index('ADM0_ISO', inplace=True)
# Unión (join) espacial
cafe_paises_america_gdf = cafe_america_gdf.sjoin(
paises_america_gdf,
predicate='intersects'
)
cafe_paises_america_gdf[['gbifID', 'species', 'ADM0_ISO', 'NAME', 'POP_EST']].head()
#Agregado
# Método alternativo para generar lista de especies por país
especies_por_pais_dict = {}
for iso, group in cafe_paises_america_gdf.groupby("ADM0_ISO"):
especies_list = group['species'].unique().tolist()
especies_list = [str(sp) for sp in especies_list if sp != 'nan' and str(sp) != 'Desconocido']
if especies_list:
especies_por_pais_dict[iso] = ', '.join(especies_list)
else:
especies_por_pais_dict[iso] = 'Sin datos de especies'
especies_por_pais = pd.DataFrame(list(especies_por_pais_dict.items()), columns=['ADM0_ISO', 'lista_especies'])
# Conteo de especies en cada país
conteo_especies_por_pais = cafe_paises_america_gdf.groupby("ADM0_ISO").species.nunique()
# Convertir la serie a dataframe
conteo_especies_por_pais = conteo_especies_por_pais.reset_index()
# Definir un índice
conteo_especies_por_pais.set_index('ADM0_ISO', inplace=True)
# Cambio de nombre de columna
conteo_especies_por_pais.rename(columns = {'species': 'especies_cafe'}, inplace = True)
# Despliegue de países y cantidades de especies
conteo_especies_por_pais.sort_values(by="especies_cafe", ascending=False)
especies_cafe | |
---|---|
ADM0_ISO | |
BRA | 13 |
COL | 4 |
CRI | 3 |
TTO | 3 |
SLV | 3 |
PAN | 3 |
ECU | 3 |
GUY | 3 |
MEX | 3 |
NIC | 3 |
HND | 2 |
PER | 2 |
GTM | 2 |
ARG | 1 |
BLZ | 1 |
BOL | 1 |
PRY | 1 |
SUR | 1 |
VEN | 1 |
# Join para agregar la columna con el conteo a la capa países
paises_america_riqueza_cafe_gdf = paises_america_gdf.join(conteo_especies_por_pais)
paises_america_riqueza_cafe_gdf[['especies_cafe', 'geometry']].sort_values(by='especies_cafe', ascending=False)
especies_cafe | geometry | |
---|---|---|
ADM0_ISO | ||
BRA | 13.0 | MULTIPOLYGON (((-53.37366 -33.76838, -53.65054... |
COL | 4.0 | MULTIPOLYGON (((-66.87633 1.25336, -67.06505 1... |
MEX | 3.0 | MULTIPOLYGON (((-117.12776 32.53534, -115.9913... |
SLV | 3.0 | MULTIPOLYGON (((-89.35333 14.42413, -89.05851 ... |
PAN | 3.0 | MULTIPOLYGON (((-77.35336 8.6705, -77.47472 8.... |
NIC | 3.0 | MULTIPOLYGON (((-83.65561 10.93876, -83.89505 ... |
CRI | 3.0 | MULTIPOLYGON (((-82.5462 9.56613, -82.93289 9.... |
ECU | 3.0 | MULTIPOLYGON (((-75.37322 -0.15203, -75.23372 ... |
TTO | 3.0 | MULTIPOLYGON (((-61.68 10.76, -61.105 10.89, -... |
GUY | 3.0 | MULTIPOLYGON (((-56.53939 1.89952, -56.7827 1.... |
PER | 2.0 | MULTIPOLYGON (((-69.89364 -4.29819, -70.79477 ... |
GTM | 2.0 | MULTIPOLYGON (((-92.22775 14.53883, -92.20323 ... |
HND | 2.0 | MULTIPOLYGON (((-83.14722 14.99583, -83.48999 ... |
ARG | 1.0 | MULTIPOLYGON (((-68.63401 -52.63637, -68.25 -5... |
BOL | 1.0 | MULTIPOLYGON (((-69.52968 -10.95173, -68.78616... |
VEN | 1.0 | MULTIPOLYGON (((-60.73357 5.20028, -60.60118 4... |
BLZ | 1.0 | MULTIPOLYGON (((-89.14308 17.80832, -89.15091 ... |
SUR | 1.0 | MULTIPOLYGON (((-54.52475 2.31185, -55.09759 2... |
PRY | 1.0 | MULTIPOLYGON (((-58.16639 -20.1767, -57.87067 ... |
CAN | NaN | MULTIPOLYGON (((-122.84 49, -122.97421 49.0025... |
USA | NaN | MULTIPOLYGON (((-122.84 49, -120 49, -117.0312... |
CHL | NaN | MULTIPOLYGON (((-68.63401 -52.63637, -68.63335... |
HTI | NaN | MULTIPOLYGON (((-71.71236 19.71446, -71.62487 ... |
DOM | NaN | MULTIPOLYGON (((-71.7083 18.045, -71.68774 18.... |
BHS | NaN | MULTIPOLYGON (((-78.98 26.79, -78.51 26.87, -7... |
B12 | NaN | MULTIPOLYGON (((-61.2 -51.85, -60 -51.25, -59.... |
GRL | NaN | MULTIPOLYGON (((-46.76379 82.62796, -43.40644 ... |
URY | NaN | MULTIPOLYGON (((-57.62513 -30.21629, -56.97603... |
PRI | NaN | MULTIPOLYGON (((-66.28243 18.51476, -65.7713 1... |
JAM | NaN | MULTIPOLYGON (((-77.5696 18.49053, -76.89662 1... |
CUB | NaN | MULTIPOLYGON (((-82.26815 23.18861, -81.40446 ... |
# Crear el mapa interactivo
m = paises_america_riqueza_cafe_gdf.explore(
column='especies_cafe',
name='Riqueza de especies de cafe',
cmap='OrRd',
tooltip=['ADM0_ISO', 'NAME', 'especies_cafe'],
legend=True,
legend_kwds={
'caption': "Riqueza de especies de cafe",
'orientation': "horizontal"
},
)
# Añadir los registros de cafe al mapa
cafe_america_gdf.explore(
m=m, # se usa el mapa que se creó en la instrucción anterior
name='Registros de presencia de cafe',
marker_type='circle',
marker_kwds={'radius': 20, 'color': '#228B22'},
tooltip=['species'],
popup=True
)
# Agregar un control de capas al mapa
folium.LayerControl().add_to(m)
# Mostrar el mapa interactivo
m