Mariposa Malaquita (Siproeta stelenes)¶
La mariposa Malaquita con una taxonomía:
Filo Arthropoda
Clase Insecta
Orden Lepidóptera
Es una mariposa neotropical presenta una distribución en el continente americano desde el sur de Texas hasta el Brasil, incluyendo Cuba, México, Honduras, Costa Rica, Ecuador y Perú presentando diferentes subespecies en diferentes localidades.
En este presente proyecto se hace uso del lenguaje de programación Phyton que a partir de archivos de datos obtenidos de la página web GBIF contienen información de la data, coordenadas, y otros datos de interés, estos sean procesados para divisar gráficos estadísticos y gráficos espaciales, los siguientes archivos se descargaron:
GBIF.org (05 March 2025) GBIF Occurrence Download
GBIF.org (07 March 2025) GBIF Occurrence Download.
En el presente trabajo se seleccionaron solo las observaciones de la especie Siproeta stelenes y la especie Siproeta stelenes ssp biplagiata, se seleccionaron las observaciones que presentasen coordenadas geográficas de la observación.
Importación de las librerías necesarias en el lenguaje de Programación Python¶
Para el procesado de la información de la especie Siproeta stelenes, se instalaron / cargaron las librerías necesarias para el manejo de:
Series de datos
Datos vectoriales
Datos matriciales
Datos en formato geoespacial
Librerias matemáticas
Librerias de graficado interactivo
En el lenguaje de programación Phyton se usaron las siguientes librerias:
Pandas
Geopandas
Mathplot
Folium
Mapclassify
leafmap
import geopandas as gpd
import pandas as pd
import matplotlib.pyplot as plt
import plotly.express as px
import folium # Para usar la función explore() en elaboración de mapas web interactivos
!pip install mapclassify --quiet
import mapclassify # Para usarse en mapas de coropletas
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0/59.1 kB ? eta -:--:-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 59.1/59.1 kB 4.0 MB/s eta 0:00:00
Lectura del archivo en formato csv de la especie de interés¶
Los Archivo descargado de la página web GBIF están en el formato electrónico "CSV" con separador entre textos "Tab" fueron importados para su lectura y su procesado uando el lenguaje Phyton.
Siproeta es el archivo con las observaciones de la especie Siproeta stelenes
Siproeta_biplagiata es el archivo con las observaciones de la especie Siproeta stelenes ssp biplagiata.
malaquita01_df = pd.read_csv("siproeta.csv", sep='\t')
malaquita02_df = pd.read_csv("siproeta_biplagiata.csv", sep='\t')
<ipython-input-2-a8f53b8c5997>:1: DtypeWarning: Columns (46) have mixed types. Specify dtype option on import or set low_memory=False. malaquita01_df = pd.read_csv("siproeta.csv", sep='\t')
Los resultados obtenidos de la importación del archivo son:¶
Se obtuvieron la siguiente cantidad de registros:
archivo malaquita01_df 17462 registros
archivo malaquira02_df 9294 registros
Cada archivo presenta 50 columnas de información:
gbifID, datasetKey, occurrenceID, kingdom, phylum, class, order, family, genus, species
infraspecificEpithet, taxonRank, scientificName, verbatimScientificName, verbatimScientificNameAuthorship, countryCode, locality, stateProvince, occurrenceStatus, individualCount, publishingOrgKey, decimalLatitude, decimalLongitude, coordinateUncertaintyInMeters,coordinatePrecision, elevation, elevationAccuracy, depth, depthAccuracy, eventDate, day, month, year, taxonKey, speciesKey, basisOfRecord, institutionCode, collectionCode, catalogNumber, recordNumber, identifiedBy, dateIdentified, license, rightsHolder, recordedBy, typeStatus, establishmentMeans, lastInterpreted, mediaType, issue
Procesado de la información¶
Concatenado¶
Se concatenaron los DataFrames (malaquita01 y malaquita02) haciendo uso de la función concat de Pandas, generando un nuevo DataFrame (malaquita_df) con 26576 registros.
malaquita_df = pd.concat([malaquita01_df,malaquita02_df])
len(malaquita_df)
26756
Graficado en histogramas por año y por país¶
Se seleccionan los registros de presencias de la especie a partir del año 1980 (malaquita_filtrado) y la presencia de la especie por país (malaquita_pais).
Se generó un gráfico histograma con el número de observaciones anuales y un segundo histograma con el número de registros por país, ambos a partir del año 1980.
malaquita_filtrado = malaquita_df[malaquita_df['year'] >= 1980]
malaquita_year = malaquita_filtrado.groupby('year')['gbifID'].count().reset_index()
# Creación del gráfico de barras
fig = px.bar(
malaquita_year,
x='year',
y='gbifID',
title='Fig. 1 Género Siproeta (1980 - 2025)'
)
# Personalización
fig.update_layout(
xaxis_title='Año',
yaxis_title='Cantidad de registros',
width=1000, # Ancho de la figura
height=600 # Alto de la figura
)
malaquita_pais = malaquita_filtrado.groupby('countryCode')['gbifID'].count().reset_index()
# Creación del gráfico de barras
fig = px.bar(
malaquita_pais,
x='countryCode',
y='gbifID',
title='Fig. 2 Género Siproeta por país a partir de 1980'
)
# Personalización
fig.update_layout(
xaxis_title='País',
yaxis_title='Cantidad de registros',
width=1000, # Ancho de la figura
height=600) # Alto de la figura
Generación de un GeoDataFrame para ser uitlizado en procesos de graficado espacial e interactivos¶
Se asigna como esferoide de proyección el ESPG:4326 (WGS84) en la generación del archvo GeoPandas
malaquita_gdf = gpd.GeoDataFrame(
malaquita_filtrado,
geometry=gpd.points_from_xy(malaquita_filtrado.decimalLongitude, malaquita_filtrado.decimalLatitude),
crs='EPSG:4326'
)
Visualización de unas columnas del GeoDataFrame¶
malaquita_gdf[['gbifID', 'species', 'decimalLongitude', 'decimalLatitude', 'geometry']].head()
gbifID | species | decimalLongitude | decimalLatitude | geometry | |
---|---|---|---|---|---|
0 | 923915340 | Siproeta stelenes | -99.812801 | 20.695301 | POINT (-99.8128 20.6953) |
1 | 911498184 | Siproeta stelenes | -92.268190 | 15.765752 | POINT (-92.26819 15.76575) |
2 | 899978592 | Siproeta stelenes | -99.136097 | 19.284451 | POINT (-99.1361 19.28445) |
3 | 899973827 | Siproeta stelenes | -87.465833 | 20.211944 | POINT (-87.46583 20.21194) |
4 | 899959309 | Siproeta stelenes | -99.099968 | 18.993052 | POINT (-99.09997 18.99305) |
paises_gdf = gpd.read_file(
'https://raw.githubusercontent.com/datos-geoespaciales-biodiversidad/python/refs/heads/main/datos/otros/naturalearth/paises.gpkg'
)
paises_gdf.to_file("paises.gpkg", driver="GPKG")
Se genera un archivo GeoPandas de nombre paises_america a partir del archivo gpkg conteniendo información solo para el contienten americano¶
Son 31 entidades o países en el continente americano.
paises_america = paises_gdf[(paises_gdf['CONTINENT'] == 'South America') | (paises_gdf['CONTINENT'] == 'North America')]
paises_america.to_file("paises_america.gpkg", driver = "GPKG")
paises_america[["ADM0_ISO", "NAME", "CONTINENT", "geometry"]]
ADM0_ISO | NAME | CONTINENT | geometry | |
---|---|---|---|---|
3 | CAN | Canada | North America | MULTIPOLYGON (((-122.84 49, -122.97421 49.0025... |
4 | USA | United States of America | North America | MULTIPOLYGON (((-122.84 49, -120 49, -117.0312... |
9 | ARG | Argentina | South America | MULTIPOLYGON (((-68.63401 -52.63637, -68.25 -5... |
10 | CHL | Chile | South America | MULTIPOLYGON (((-68.63401 -52.63637, -68.63335... |
16 | HTI | Haiti | North America | MULTIPOLYGON (((-71.71236 19.71446, -71.62487 ... |
17 | DOM | Dominican Rep. | North America | MULTIPOLYGON (((-71.7083 18.045, -71.68774 18.... |
19 | BHS | Bahamas | North America | MULTIPOLYGON (((-78.98 26.79, -78.51 26.87, -7... |
20 | B12 | Falkland Is. | South America | MULTIPOLYGON (((-61.2 -51.85, -60 -51.25, -59.... |
22 | GRL | Greenland | North America | MULTIPOLYGON (((-46.76379 82.62796, -43.40644 ... |
27 | MEX | Mexico | North America | MULTIPOLYGON (((-117.12776 32.53534, -115.9913... |
28 | URY | Uruguay | South America | MULTIPOLYGON (((-57.62513 -30.21629, -56.97603... |
29 | BRA | Brazil | South America | MULTIPOLYGON (((-53.37366 -33.76838, -53.65054... |
30 | BOL | Bolivia | South America | MULTIPOLYGON (((-69.52968 -10.95173, -68.78616... |
31 | PER | Peru | South America | MULTIPOLYGON (((-69.89364 -4.29819, -70.79477 ... |
32 | COL | Colombia | South America | MULTIPOLYGON (((-66.87633 1.25336, -67.06505 1... |
33 | PAN | Panama | North America | MULTIPOLYGON (((-77.35336 8.6705, -77.47472 8.... |
34 | CRI | Costa Rica | North America | MULTIPOLYGON (((-82.5462 9.56613, -82.93289 9.... |
35 | NIC | Nicaragua | North America | MULTIPOLYGON (((-83.65561 10.93876, -83.89505 ... |
36 | HND | Honduras | North America | MULTIPOLYGON (((-83.14722 14.99583, -83.48999 ... |
37 | SLV | El Salvador | North America | MULTIPOLYGON (((-89.35333 14.42413, -89.05851 ... |
38 | GTM | Guatemala | North America | MULTIPOLYGON (((-92.22775 14.53883, -92.20323 ... |
39 | BLZ | Belize | North America | MULTIPOLYGON (((-89.14308 17.80832, -89.15091 ... |
40 | VEN | Venezuela | South America | MULTIPOLYGON (((-60.73357 5.20028, -60.60118 4... |
41 | GUY | Guyana | South America | MULTIPOLYGON (((-56.53939 1.89952, -56.7827 1.... |
42 | SUR | Suriname | South America | MULTIPOLYGON (((-54.52475 2.31185, -55.09759 2... |
44 | ECU | Ecuador | South America | MULTIPOLYGON (((-75.37322 -0.15203, -75.23372 ... |
45 | PRI | Puerto Rico | North America | MULTIPOLYGON (((-66.28243 18.51476, -65.7713 1... |
46 | JAM | Jamaica | North America | MULTIPOLYGON (((-77.5696 18.49053, -76.89662 1... |
47 | CUB | Cuba | North America | MULTIPOLYGON (((-82.26815 23.18861, -81.40446 ... |
156 | PRY | Paraguay | South America | MULTIPOLYGON (((-58.16639 -20.1767, -57.87067 ... |
175 | TTO | Trinidad and Tobago | North America | MULTIPOLYGON (((-61.68 10.76, -61.105 10.89, -... |
Se grafican las observaciones de la especie Siproeta sobre la geografía de los países del contiente americano¶
fig, ax = plt.subplots(figsize=(8, 8))
# Capa de países de América
paises_america.plot(
ax=ax,
color="purple",
alpha = 0.3,
edgecolor="black"
)
# Registros de la Siproeta stelens y Siproeta stelenes biplagiata en el continente americano
malaquita_gdf.plot(
ax=ax,
marker="o",
color="red",
markersize=5
)
ax.set_title("Fig. 3 Presencia del género Siproeta en el continente Americano")
ax.set_xlabel("Longitud Geográfica")
ax.set_ylabel("Latitud Geográfica")
Text(55.472222222222214, 0.5, 'Latitud Geográfica')
Se procedió a realizar la unión espacial de los archivos de los países de América y el conteo de observaciones de la especie Siproeta stelenes por país¶
Solo 26 países en el continente Americano presentan registros de la especie.
paises_america.set_index('ADM0_ISO', inplace=True)
paises_america
featurecla | scalerank | LABELRANK | SOVEREIGNT | SOV_A3 | ADM0_DIF | LEVEL | TYPE | TLC | ADMIN | ... | FCLASS_TR | FCLASS_ID | FCLASS_PL | FCLASS_GR | FCLASS_IT | FCLASS_NL | FCLASS_SE | FCLASS_BD | FCLASS_UA | geometry | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ADM0_ISO | |||||||||||||||||||||
CAN | Admin-0 country | 1 | 2 | Canada | CAN | 0 | 2 | Sovereign country | 1 | Canada | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-122.84 49, -122.97421 49.0025... |
USA | Admin-0 country | 1 | 2 | United States of America | US1 | 1 | 2 | Country | 1 | United States of America | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-122.84 49, -120 49, -117.0312... |
ARG | Admin-0 country | 1 | 2 | Argentina | ARG | 0 | 2 | Sovereign country | 1 | Argentina | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-68.63401 -52.63637, -68.25 -5... |
CHL | Admin-0 country | 1 | 2 | Chile | CHL | 0 | 2 | Sovereign country | 1 | Chile | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-68.63401 -52.63637, -68.63335... |
HTI | Admin-0 country | 1 | 5 | Haiti | HTI | 0 | 2 | Sovereign country | 1 | Haiti | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-71.71236 19.71446, -71.62487 ... |
DOM | Admin-0 country | 1 | 5 | Dominican Republic | DOM | 0 | 2 | Sovereign country | 1 | Dominican Republic | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-71.7083 18.045, -71.68774 18.... |
BHS | Admin-0 country | 1 | 4 | The Bahamas | BHS | 0 | 2 | Sovereign country | 1 | The Bahamas | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-78.98 26.79, -78.51 26.87, -7... |
B12 | Admin-0 country | 1 | 5 | United Kingdom | GB1 | 1 | 2 | Disputed | 1 | Falkland Islands | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-61.2 -51.85, -60 -51.25, -59.... |
GRL | Admin-0 country | 1 | 3 | Denmark | DN1 | 1 | 2 | Country | 1 | Greenland | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-46.76379 82.62796, -43.40644 ... |
MEX | Admin-0 country | 1 | 2 | Mexico | MEX | 0 | 2 | Sovereign country | 1 | Mexico | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-117.12776 32.53534, -115.9913... |
URY | Admin-0 country | 1 | 4 | Uruguay | URY | 0 | 2 | Sovereign country | 1 | Uruguay | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-57.62513 -30.21629, -56.97603... |
BRA | Admin-0 country | 1 | 2 | Brazil | BRA | 0 | 2 | Sovereign country | 1 | Brazil | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-53.37366 -33.76838, -53.65054... |
BOL | Admin-0 country | 1 | 3 | Bolivia | BOL | 0 | 2 | Sovereign country | 1 | Bolivia | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-69.52968 -10.95173, -68.78616... |
PER | Admin-0 country | 1 | 2 | Peru | PER | 0 | 2 | Sovereign country | 1 | Peru | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-69.89364 -4.29819, -70.79477 ... |
COL | Admin-0 country | 1 | 2 | Colombia | COL | 0 | 2 | Sovereign country | 1 | Colombia | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-66.87633 1.25336, -67.06505 1... |
PAN | Admin-0 country | 1 | 4 | Panama | PAN | 0 | 2 | Sovereign country | 1 | Panama | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-77.35336 8.6705, -77.47472 8.... |
CRI | Admin-0 country | 1 | 5 | Costa Rica | CRI | 0 | 2 | Sovereign country | 1 | Costa Rica | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-82.5462 9.56613, -82.93289 9.... |
NIC | Admin-0 country | 1 | 5 | Nicaragua | NIC | 0 | 2 | Sovereign country | 1 | Nicaragua | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-83.65561 10.93876, -83.89505 ... |
HND | Admin-0 country | 1 | 5 | Honduras | HND | 0 | 2 | Sovereign country | 1 | Honduras | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-83.14722 14.99583, -83.48999 ... |
SLV | Admin-0 country | 1 | 6 | El Salvador | SLV | 0 | 2 | Sovereign country | 1 | El Salvador | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-89.35333 14.42413, -89.05851 ... |
GTM | Admin-0 country | 1 | 3 | Guatemala | GTM | 0 | 2 | Sovereign country | 1 | Guatemala | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-92.22775 14.53883, -92.20323 ... |
BLZ | Admin-0 country | 1 | 6 | Belize | BLZ | 0 | 2 | Sovereign country | 1 | Belize | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-89.14308 17.80832, -89.15091 ... |
VEN | Admin-0 country | 1 | 3 | Venezuela | VEN | 0 | 2 | Sovereign country | 1 | Venezuela | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-60.73357 5.20028, -60.60118 4... |
GUY | Admin-0 country | 1 | 4 | Guyana | GUY | 0 | 2 | Sovereign country | 1 | Guyana | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-56.53939 1.89952, -56.7827 1.... |
SUR | Admin-0 country | 1 | 4 | Suriname | SUR | 0 | 2 | Sovereign country | 1 | Suriname | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-54.52475 2.31185, -55.09759 2... |
ECU | Admin-0 country | 1 | 3 | Ecuador | ECU | 0 | 2 | Sovereign country | 1 | Ecuador | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-75.37322 -0.15203, -75.23372 ... |
PRI | Admin-0 country | 1 | 5 | United States of America | US1 | 1 | 2 | Dependency | 1 | Puerto Rico | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-66.28243 18.51476, -65.7713 1... |
JAM | Admin-0 country | 1 | 4 | Jamaica | JAM | 0 | 2 | Sovereign country | 1 | Jamaica | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-77.5696 18.49053, -76.89662 1... |
CUB | Admin-0 country | 1 | 3 | Cuba | CU1 | 1 | 1 | Sovereignty | 1 | Cuba | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-82.26815 23.18861, -81.40446 ... |
PRY | Admin-0 country | 1 | 4 | Paraguay | PRY | 0 | 2 | Sovereign country | 1 | Paraguay | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-58.16639 -20.1767, -57.87067 ... |
TTO | Admin-0 country | 1 | 5 | Trinidad and Tobago | TTO | 0 | 2 | Sovereign country | 1 | Trinidad and Tobago | ... | None | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-61.68 10.76, -61.105 10.89, -... |
31 rows × 168 columns
malaquita_pais = malaquita_gdf.sjoin(
paises_america,
predicate='intersects'
)
malaquita_pais[['gbifID', 'species', 'ADM0_ISO', 'NAME', 'POP_EST']].head()
gbifID | species | ADM0_ISO | NAME | POP_EST | |
---|---|---|---|---|---|
0 | 923915340 | Siproeta stelenes | MEX | Mexico | 127575529.0 |
1 | 911498184 | Siproeta stelenes | MEX | Mexico | 127575529.0 |
2 | 899978592 | Siproeta stelenes | MEX | Mexico | 127575529.0 |
3 | 899973827 | Siproeta stelenes | MEX | Mexico | 127575529.0 |
4 | 899959309 | Siproeta stelenes | MEX | Mexico | 127575529.0 |
malaquita_conteo_pais = malaquita_pais.groupby("ADM0_ISO").gbifID.nunique()
malaquita_conteo_pais = malaquita_conteo_pais.reset_index()
malaquita_conteo_pais.set_index('ADM0_ISO', inplace=True)
malaquita_conteo_pais.rename(columns = {'gbifID': 'registros'}, inplace = True)
malaquita_conteo_pais.sort_values(by="registros", ascending=False)
malaquita_conteo_pais
registros | |
---|---|
ADM0_ISO | |
ARG | 203 |
BLZ | 80 |
BOL | 37 |
BRA | 987 |
COL | 591 |
CRI | 1130 |
CUB | 121 |
DOM | 154 |
ECU | 279 |
GTM | 92 |
GUY | 8 |
HND | 225 |
HTI | 5 |
JAM | 50 |
MEX | 9480 |
NIC | 198 |
PAN | 448 |
PER | 189 |
PRI | 182 |
PRY | 22 |
SLV | 88 |
SUR | 39 |
TTO | 52 |
URY | 9 |
USA | 525 |
VEN | 36 |
#len(malaquita_conteo_pais)
Se realizo la unión (no espacial) del mapa de area geográfica de América con los resultados del conteo de la especie por país, generando el gráfico de mapa con coropletas.¶
Alaska es un estado perteneciente a los USA, no existen registros de la especie Siproeta stelenes en Alaska.
En los países sin registros (NAN) se cambiaron a valor numérico de 0.0
malaquita_riqueza_gdf = paises_america.join(malaquita_conteo_pais)
malaquita_riqueza_gdf.head()
featurecla | scalerank | LABELRANK | SOVEREIGNT | SOV_A3 | ADM0_DIF | LEVEL | TYPE | TLC | ADMIN | ... | FCLASS_ID | FCLASS_PL | FCLASS_GR | FCLASS_IT | FCLASS_NL | FCLASS_SE | FCLASS_BD | FCLASS_UA | geometry | registros | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ADM0_ISO | |||||||||||||||||||||
CAN | Admin-0 country | 1 | 2 | Canada | CAN | 0 | 2 | Sovereign country | 1 | Canada | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-122.84 49, -122.97421 49.0025... | NaN |
USA | Admin-0 country | 1 | 2 | United States of America | US1 | 1 | 2 | Country | 1 | United States of America | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-122.84 49, -120 49, -117.0312... | 525.0 |
ARG | Admin-0 country | 1 | 2 | Argentina | ARG | 0 | 2 | Sovereign country | 1 | Argentina | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-68.63401 -52.63637, -68.25 -5... | 203.0 |
CHL | Admin-0 country | 1 | 2 | Chile | CHL | 0 | 2 | Sovereign country | 1 | Chile | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-68.63401 -52.63637, -68.63335... | NaN |
HTI | Admin-0 country | 1 | 5 | Haiti | HTI | 0 | 2 | Sovereign country | 1 | Haiti | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-71.71236 19.71446, -71.62487 ... | 5.0 |
5 rows × 169 columns
malaquita_riqueza_gdf["registros"].fillna(value = 0.0, inplace = True)
<ipython-input-15-5e0c37cde1bd>:1: FutureWarning: A value is trying to be set on a copy of a DataFrame or Series through chained assignment using an inplace method. The behavior will change in pandas 3.0. This inplace method will never work because the intermediate object on which we are setting values always behaves as a copy. For example, when doing 'df[col].method(value, inplace=True)', try using 'df.method({col: value}, inplace=True)' or df[col] = df[col].method(value) instead, to perform the operation inplace on the original object.
malaquita_riqueza_gdf.head()
featurecla | scalerank | LABELRANK | SOVEREIGNT | SOV_A3 | ADM0_DIF | LEVEL | TYPE | TLC | ADMIN | ... | FCLASS_ID | FCLASS_PL | FCLASS_GR | FCLASS_IT | FCLASS_NL | FCLASS_SE | FCLASS_BD | FCLASS_UA | geometry | registros | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ADM0_ISO | |||||||||||||||||||||
CAN | Admin-0 country | 1 | 2 | Canada | CAN | 0 | 2 | Sovereign country | 1 | Canada | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-122.84 49, -122.97421 49.0025... | 0.0 |
USA | Admin-0 country | 1 | 2 | United States of America | US1 | 1 | 2 | Country | 1 | United States of America | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-122.84 49, -120 49, -117.0312... | 525.0 |
ARG | Admin-0 country | 1 | 2 | Argentina | ARG | 0 | 2 | Sovereign country | 1 | Argentina | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-68.63401 -52.63637, -68.25 -5... | 203.0 |
CHL | Admin-0 country | 1 | 2 | Chile | CHL | 0 | 2 | Sovereign country | 1 | Chile | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-68.63401 -52.63637, -68.63335... | 0.0 |
HTI | Admin-0 country | 1 | 5 | Haiti | HTI | 0 | 2 | Sovereign country | 1 | Haiti | ... | None | None | None | None | None | None | None | None | MULTIPOLYGON (((-71.71236 19.71446, -71.62487 ... | 5.0 |
5 rows × 169 columns
Se genera un gráfico de coropletas que muestre la riqueza de la especie Siproeta en cada país del continente Americano.¶
fig, ax = plt.subplots(figsize=(9, 9))
malaquita_riqueza_gdf.plot(
ax = ax,
column="registros",
legend=True,
cmap='tab20c',
scheme='quantiles',
k = 10,
legend_kwds={"loc": "center left"}
)
paises_america.boundary.plot(ax = ax, color = "blue")
ax.set_title("Fig 4 Riqueza del género Siproeta en America")
ax.set_xlabel("Longitud Geográfica")
ax.set_ylabel("Latitud Geográfica")
Text(67.97222222222221, 0.5, 'Latitud Geográfica')
Se genera un achivo ESRI shapefile con la información de la riqueza de la especie "Siproeta".¶
malaquita_riqueza_gdf.to_file("malaquita_riqueza.shp")
/usr/local/lib/python3.11/dist-packages/pyogrio/raw.py:723: RuntimeWarning: Value 328239523 of field POP_EST of feature 1 not successfully written. Possibly due to too larger number with respect to field width /usr/local/lib/python3.11/dist-packages/pyogrio/raw.py:723: RuntimeWarning: Value 127575529 of field POP_EST of feature 9 not successfully written. Possibly due to too larger number with respect to field width /usr/local/lib/python3.11/dist-packages/pyogrio/raw.py:723: RuntimeWarning: Value 211049527 of field POP_EST of feature 11 not successfully written. Possibly due to too larger number with respect to field width
#display(malaquita_riqueza_gdf)
featurecla | scalerank | LABELRANK | SOVEREIGNT | SOV_A3 | ADM0_DIF | LEVEL | TYPE | TLC | ADMIN | ... | FCLASS_GR | FCLASS_IT | FCLASS_NL | FCLASS_SE | FCLASS_BD | FCLASS_UA | geometry | registros | category | color | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
ADM0_ISO | |||||||||||||||||||||
CAN | Admin-0 country | 1 | 2 | Canada | CAN | 0 | 2 | Sovereign country | 1 | Canada | ... | None | None | None | None | None | None | MULTIPOLYGON (((-122.84 49, -122.97421 49.0025... | 0.0 | 1 | #440154 |
USA | Admin-0 country | 1 | 2 | United States of America | US1 | 1 | 2 | Country | 1 | United States of America | ... | None | None | None | None | None | None | MULTIPOLYGON (((-122.84 49, -120 49, -117.0312... | 525.0 | 5 | #fde725 |
ARG | Admin-0 country | 1 | 2 | Argentina | ARG | 0 | 2 | Sovereign country | 1 | Argentina | ... | None | None | None | None | None | None | MULTIPOLYGON (((-68.63401 -52.63637, -68.25 -5... | 203.0 | 4 | #5ec962 |
CHL | Admin-0 country | 1 | 2 | Chile | CHL | 0 | 2 | Sovereign country | 1 | Chile | ... | None | None | None | None | None | None | MULTIPOLYGON (((-68.63401 -52.63637, -68.63335... | 0.0 | 1 | #440154 |
HTI | Admin-0 country | 1 | 5 | Haiti | HTI | 0 | 2 | Sovereign country | 1 | Haiti | ... | None | None | None | None | None | None | MULTIPOLYGON (((-71.71236 19.71446, -71.62487 ... | 5.0 | 1 | #440154 |
DOM | Admin-0 country | 1 | 5 | Dominican Republic | DOM | 0 | 2 | Sovereign country | 1 | Dominican Republic | ... | None | None | None | None | None | None | MULTIPOLYGON (((-71.7083 18.045, -71.68774 18.... | 154.0 | 3 | #21918c |
BHS | Admin-0 country | 1 | 4 | The Bahamas | BHS | 0 | 2 | Sovereign country | 1 | The Bahamas | ... | None | None | None | None | None | None | MULTIPOLYGON (((-78.98 26.79, -78.51 26.87, -7... | 0.0 | 1 | #440154 |
B12 | Admin-0 country | 1 | 5 | United Kingdom | GB1 | 1 | 2 | Disputed | 1 | Falkland Islands | ... | None | None | None | None | None | None | MULTIPOLYGON (((-61.2 -51.85, -60 -51.25, -59.... | 0.0 | 1 | #440154 |
GRL | Admin-0 country | 1 | 3 | Denmark | DN1 | 1 | 2 | Country | 1 | Greenland | ... | None | None | None | None | None | None | MULTIPOLYGON (((-46.76379 82.62796, -43.40644 ... | 0.0 | 1 | #440154 |
MEX | Admin-0 country | 1 | 2 | Mexico | MEX | 0 | 2 | Sovereign country | 1 | Mexico | ... | None | None | None | None | None | None | MULTIPOLYGON (((-117.12776 32.53534, -115.9913... | 9480.0 | 5 | #fde725 |
URY | Admin-0 country | 1 | 4 | Uruguay | URY | 0 | 2 | Sovereign country | 1 | Uruguay | ... | None | None | None | None | None | None | MULTIPOLYGON (((-57.62513 -30.21629, -56.97603... | 9.0 | 2 | #3b528b |
BRA | Admin-0 country | 1 | 2 | Brazil | BRA | 0 | 2 | Sovereign country | 1 | Brazil | ... | None | None | None | None | None | None | MULTIPOLYGON (((-53.37366 -33.76838, -53.65054... | 987.0 | 5 | #fde725 |
BOL | Admin-0 country | 1 | 3 | Bolivia | BOL | 0 | 2 | Sovereign country | 1 | Bolivia | ... | None | None | None | None | None | None | MULTIPOLYGON (((-69.52968 -10.95173, -68.78616... | 37.0 | 2 | #3b528b |
PER | Admin-0 country | 1 | 2 | Peru | PER | 0 | 2 | Sovereign country | 1 | Peru | ... | None | None | None | None | None | None | MULTIPOLYGON (((-69.89364 -4.29819, -70.79477 ... | 189.0 | 4 | #5ec962 |
COL | Admin-0 country | 1 | 2 | Colombia | COL | 0 | 2 | Sovereign country | 1 | Colombia | ... | None | None | None | None | None | None | MULTIPOLYGON (((-66.87633 1.25336, -67.06505 1... | 591.0 | 5 | #fde725 |
PAN | Admin-0 country | 1 | 4 | Panama | PAN | 0 | 2 | Sovereign country | 1 | Panama | ... | None | None | None | None | None | None | MULTIPOLYGON (((-77.35336 8.6705, -77.47472 8.... | 448.0 | 5 | #fde725 |
CRI | Admin-0 country | 1 | 5 | Costa Rica | CRI | 0 | 2 | Sovereign country | 1 | Costa Rica | ... | None | None | None | None | None | None | MULTIPOLYGON (((-82.5462 9.56613, -82.93289 9.... | 1130.0 | 5 | #fde725 |
NIC | Admin-0 country | 1 | 5 | Nicaragua | NIC | 0 | 2 | Sovereign country | 1 | Nicaragua | ... | None | None | None | None | None | None | MULTIPOLYGON (((-83.65561 10.93876, -83.89505 ... | 198.0 | 4 | #5ec962 |
HND | Admin-0 country | 1 | 5 | Honduras | HND | 0 | 2 | Sovereign country | 1 | Honduras | ... | None | None | None | None | None | None | MULTIPOLYGON (((-83.14722 14.99583, -83.48999 ... | 225.0 | 4 | #5ec962 |
SLV | Admin-0 country | 1 | 6 | El Salvador | SLV | 0 | 2 | Sovereign country | 1 | El Salvador | ... | None | None | None | None | None | None | MULTIPOLYGON (((-89.35333 14.42413, -89.05851 ... | 88.0 | 3 | #21918c |
GTM | Admin-0 country | 1 | 3 | Guatemala | GTM | 0 | 2 | Sovereign country | 1 | Guatemala | ... | None | None | None | None | None | None | MULTIPOLYGON (((-92.22775 14.53883, -92.20323 ... | 92.0 | 3 | #21918c |
BLZ | Admin-0 country | 1 | 6 | Belize | BLZ | 0 | 2 | Sovereign country | 1 | Belize | ... | None | None | None | None | None | None | MULTIPOLYGON (((-89.14308 17.80832, -89.15091 ... | 80.0 | 3 | #21918c |
VEN | Admin-0 country | 1 | 3 | Venezuela | VEN | 0 | 2 | Sovereign country | 1 | Venezuela | ... | None | None | None | None | None | None | MULTIPOLYGON (((-60.73357 5.20028, -60.60118 4... | 36.0 | 2 | #3b528b |
GUY | Admin-0 country | 1 | 4 | Guyana | GUY | 0 | 2 | Sovereign country | 1 | Guyana | ... | None | None | None | None | None | None | MULTIPOLYGON (((-56.53939 1.89952, -56.7827 1.... | 8.0 | 1 | #440154 |
SUR | Admin-0 country | 1 | 4 | Suriname | SUR | 0 | 2 | Sovereign country | 1 | Suriname | ... | None | None | None | None | None | None | MULTIPOLYGON (((-54.52475 2.31185, -55.09759 2... | 39.0 | 2 | #3b528b |
ECU | Admin-0 country | 1 | 3 | Ecuador | ECU | 0 | 2 | Sovereign country | 1 | Ecuador | ... | None | None | None | None | None | None | MULTIPOLYGON (((-75.37322 -0.15203, -75.23372 ... | 279.0 | 4 | #5ec962 |
PRI | Admin-0 country | 1 | 5 | United States of America | US1 | 1 | 2 | Dependency | 1 | Puerto Rico | ... | None | None | None | None | None | None | MULTIPOLYGON (((-66.28243 18.51476, -65.7713 1... | 182.0 | 4 | #5ec962 |
JAM | Admin-0 country | 1 | 4 | Jamaica | JAM | 0 | 2 | Sovereign country | 1 | Jamaica | ... | None | None | None | None | None | None | MULTIPOLYGON (((-77.5696 18.49053, -76.89662 1... | 50.0 | 2 | #3b528b |
CUB | Admin-0 country | 1 | 3 | Cuba | CU1 | 1 | 1 | Sovereignty | 1 | Cuba | ... | None | None | None | None | None | None | MULTIPOLYGON (((-82.26815 23.18861, -81.40446 ... | 121.0 | 3 | #21918c |
PRY | Admin-0 country | 1 | 4 | Paraguay | PRY | 0 | 2 | Sovereign country | 1 | Paraguay | ... | None | None | None | None | None | None | MULTIPOLYGON (((-58.16639 -20.1767, -57.87067 ... | 22.0 | 2 | #3b528b |
TTO | Admin-0 country | 1 | 5 | Trinidad and Tobago | TTO | 0 | 2 | Sovereign country | 1 | Trinidad and Tobago | ... | None | None | None | None | None | None | MULTIPOLYGON (((-61.68 10.76, -61.105 10.89, -... | 52.0 | 3 | #21918c |
31 rows × 171 columns
# Biblioteca requerida para mapas interactivos
!pip install mapclassify --quiet
import mapclassify
Uso de capas raster¶
De la página WorldClim se descargaron tres capas en formato raster de registros climáticos mundiales comprendidos desde el año 1970 al 2000 con resolución de 2.5 minutos de arco, estas son variables bioclimáticas utilizadas en la modelación de distribución de especies y / o modelación de nichos ecológicos. Estos archivos raster son importados con la función rasterio del lenguaje de programación Phyton, las variables bioclimáticas seleccionadas que se utilizaron son
BIO1 = Annual Mean Temperature (Temperatura Promedio Anual)
BIO7 = Temperature Annual Range (BIO5-BIO6) (Rango Anual de Temperatura)
BIO12 = Annual Precipitation (Precipitación Anual)
Elev = Elevaciones snmm
Son factores que influyen / determinan la ecología, el hábitat, la biodiversidad, la distribución geográfica y los nichos ecológicos de las diversidades de especies existentes.
# Instalación de rasterio
!pip install rasterio --quiet
# Carga de rasterio
import rasterio
# Carga de rasterio.plot (para graficar datos raster)
import rasterio.plot
━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 22.2/22.2 MB 50.7 MB/s eta 0:00:00
# Carga de rasterio
import rasterio
# Carga de rasterio.plot (para graficar datos raster)
import rasterio.plot
Se cargan las capas raster seleccionadas:¶
annual mean temperature
annual precipitation
temperature annual range
elevations
Se procede a generar los gráficos de cada una de las capas raster importadas.
annual_mean_temperature = rasterio.open("wc2.1_2.5m_bio_1.tif")
temperature_annual_range = rasterio.open("wc2.1_2.5m_bio_7.tif")
annual_precipitation = rasterio.open("wc2.1_2.5m_bio_12.tif")
elevaciones = rasterio.open("wc2.1_2.5m_elev.tif")
fig, (ax1, ax2) = plt.subplots(nrows = 1, ncols = 2,
figsize=(10, 8),
sharex = False, sharey = False)
ax1 = rasterio.plot.show(annual_mean_temperature,
cmap="vanimo", # colores
ax=ax1,
title="Fig 5 Temperatura media anual")
# Agregar una leyenda
cbar = fig.colorbar(ax1.images[0], ax=ax1, shrink=0.5)
cbar.set_label('°C')
# Limitar el rango de los ejes
ax1.set_xlim(-170.0, -30.0)
ax1.set_ylim(-90.0, 90.0)
ax2 = rasterio.plot.show(annual_precipitation,
cmap="seismic",
ax = ax2,
title= "Fig 6 Precipitación Media Anual")
cbar = fig.colorbar(ax2.images[0], ax=ax2, shrink=0.5)
cbar.set_label('mm')
ax2.set_xlim(-170.0, -30.0)
ax2.set_ylim(-90.0, 90.0)
plt.savefig("Rasters1.png")
fig, (ax3, ax4) = plt.subplots(nrows = 1, ncols = 2,
figsize=(10, 8),
sharex = False, sharey = False)
ax3 = rasterio.plot.show(temperature_annual_range,
cmap = "coolwarm",
ax = ax3,
title = "Fig 7 Rango de Temperatura")
cbar = fig.colorbar(ax3.images[0], ax=ax3, shrink=0.5)
cbar.set_label('°C')
ax3.set_xlim(-170.0, -30.0)
ax3.set_ylim(-90.0, 90.0)
ax4 = rasterio.plot.show(elevaciones,
cmap = "terrain",
ax = ax4,
title = "Fig 8 Elevaciones")
cbar = fig.colorbar(ax4.images[0], ax=ax4, shrink=0.5)
cbar.set_label('msnmm')
ax4.set_xlim(-170.0, -30.0)
ax4.set_ylim(-90.0, 90.0)
plt.savefig("Rasters2.png")
plt.show()
!pip install leafmap --quiet
!pip install localtileserver --quiet
import leafmap
import leafmap.colormaps as cm
from matplotlib.colors import LinearSegmentedColormap #Rampas de Colores
from google.colab import output
output.enable_custom_widget_manager() #Widget de Java Script
WARNING: Retrying (Retry(total=4, connect=None, read=None, redirect=None, status=None)) after connection broken by 'ProtocolError('Connection aborted.', RemoteDisconnected('Remote end closed connection without response'))': /packages/b3/80/5efeffec1661e8d21596e273c02dc3e8e5232c3184f2414f8703145ddd50/leafmap-0.42.13-py2.py3-none-any.whl ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 0.0/519.2 kB ? eta -:--:-- ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 519.2/519.2 kB 24.8 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 219.1/219.1 kB 18.1 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 7.7/7.7 MB 103.5 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 41.4/41.4 kB 3.2 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 108.6/108.6 kB 8.6 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.7/2.7 MB 73.6 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 765.5/765.5 kB 42.9 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 194.2/194.2 kB 15.7 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 74.0/74.0 kB 6.1 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.6/1.6 MB 62.8 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 17.1/17.1 MB 73.6 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 2.8/2.8 MB 23.0 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 267.5/267.5 kB 21.4 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 52.8/52.8 kB 4.1 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 49.5/49.5 kB 3.4 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 195.0/195.0 kB 14.7 MB/s eta 0:00:00 ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 62.3/62.3 kB 5.1 MB/s eta 0:00:00
malaquita_riqueza_shp = gpd.read_file(f"malaquita_riqueza.shp")
malaquita_riqueza_shp["area"] = malaquita_riqueza_shp.area
malaquita_riqueza_shp["boundary"] = malaquita_riqueza_shp.boundary
malaquita_riqueza_shp["centroid"] = malaquita_riqueza_shp.centroid
malaquita_riqueza_shp
ADM0_ISO | featurecla | scalerank | LABELRANK | SOVEREIGNT | SOV_A3 | ADM0_DIF | LEVEL | TYPE | TLC | ... | FCLASS_IT | FCLASS_NL | FCLASS_SE | FCLASS_BD | FCLASS_UA | registros | geometry | area | boundary | centroid | |
---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|---|
0 | CAN | Admin-0 country | 1 | 2 | Canada | CAN | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | NaN | MULTIPOLYGON (((-122.84 49, -122.97421 49.0025... | 1712.995228 | MULTILINESTRING ((-122.84 49, -122.97421 49.00... | POINT (-98.14238 61.46908) |
1 | USA | Admin-0 country | 1 | 2 | United States of America | US1 | 1 | 2 | Country | 1 | ... | None | None | None | None | None | 525.0 | MULTIPOLYGON (((-122.84 49, -120 49, -117.0312... | 1122.281921 | MULTILINESTRING ((-122.84 49, -120 49, -117.03... | POINT (-112.59944 45.70563) |
2 | ARG | Admin-0 country | 1 | 2 | Argentina | ARG | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 203.0 | MULTIPOLYGON (((-68.63401 -52.63637, -68.25 -5... | 278.923392 | MULTILINESTRING ((-68.63401 -52.63637, -68.25 ... | POINT (-65.17536 -35.44682) |
3 | CHL | Admin-0 country | 1 | 2 | Chile | CHL | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | NaN | MULTIPOLYGON (((-68.63401 -52.63637, -68.63335... | 86.508469 | MULTILINESTRING ((-68.63401 -52.63637, -68.633... | POINT (-71.52064 -39.04701) |
4 | HTI | Admin-0 country | 1 | 5 | Haiti | HTI | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 5.0 | POLYGON ((-71.71236 19.71446, -71.62487 19.169... | 2.447114 | LINESTRING (-71.71236 19.71446, -71.62487 19.1... | POINT (-72.65801 18.9007) |
5 | DOM | Admin-0 country | 1 | 5 | Dominican Republic | DOM | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 154.0 | POLYGON ((-71.7083 18.045, -71.68774 18.31666,... | 4.129206 | LINESTRING (-71.7083 18.045, -71.68774 18.3166... | POINT (-70.46236 18.88449) |
6 | BHS | Admin-0 country | 1 | 4 | The Bahamas | BHS | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | NaN | MULTIPOLYGON (((-78.98 26.79, -78.51 26.87, -7... | 1.399757 | MULTILINESTRING ((-78.98 26.79, -78.51 26.87, ... | POINT (-77.92997 25.51549) |
7 | B12 | Admin-0 country | 1 | 5 | United Kingdom | GB1 | 1 | 2 | Disputed | 1 | ... | None | None | None | None | None | NaN | POLYGON ((-61.2 -51.85, -60 -51.25, -59.15 -51... | 2.128750 | LINESTRING (-61.2 -51.85, -60 -51.25, -59.15 -... | POINT (-59.42097 -51.71322) |
8 | GRL | Admin-0 country | 1 | 3 | Denmark | DN1 | 1 | 2 | Country | 1 | ... | None | None | None | None | None | NaN | POLYGON ((-46.76379 82.62796, -43.40644 83.225... | 677.509565 | LINESTRING (-46.76379 82.62796, -43.40644 83.2... | POINT (-41.50018 74.77049) |
9 | MEX | Admin-0 country | 1 | 2 | Mexico | MEX | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 9480.0 | POLYGON ((-117.12776 32.53534, -115.99135 32.6... | 175.207341 | LINESTRING (-117.12776 32.53534, -115.99135 32... | POINT (-102.57635 23.93537) |
10 | URY | Admin-0 country | 1 | 4 | Uruguay | URY | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 9.0 | POLYGON ((-57.62513 -30.21629, -56.97603 -30.1... | 17.027171 | LINESTRING (-57.62513 -30.21629, -56.97603 -30... | POINT (-56.00328 -32.7809) |
11 | BRA | Admin-0 country | 1 | 2 | Brazil | BRA | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 987.0 | POLYGON ((-53.37366 -33.76838, -53.65054 -33.2... | 710.185243 | LINESTRING (-53.37366 -33.76838, -53.65054 -33... | POINT (-53.05434 -10.80677) |
12 | BOL | Admin-0 country | 1 | 3 | Bolivia | BOL | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 37.0 | POLYGON ((-69.52968 -10.95173, -68.78616 -11.0... | 92.077173 | LINESTRING (-69.52968 -10.95173, -68.78616 -11... | POINT (-64.64141 -16.72899) |
13 | PER | Admin-0 country | 1 | 2 | Peru | PER | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 189.0 | POLYGON ((-69.89364 -4.29819, -70.79477 -4.251... | 108.049821 | LINESTRING (-69.89364 -4.29819, -70.79477 -4.2... | POINT (-74.39181 -9.19156) |
14 | COL | Admin-0 country | 1 | 2 | Colombia | COL | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 591.0 | POLYGON ((-66.87633 1.25336, -67.06505 1.13011... | 93.945155 | LINESTRING (-66.87633 1.25336, -67.06505 1.130... | POINT (-73.07773 3.92721) |
15 | PAN | Admin-0 country | 1 | 4 | Panama | PAN | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 448.0 | POLYGON ((-77.35336 8.6705, -77.47472 8.52429,... | 6.181283 | LINESTRING (-77.35336 8.6705, -77.47472 8.5242... | POINT (-80.10916 8.53002) |
16 | CRI | Admin-0 country | 1 | 5 | Costa Rica | CRI | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 1130.0 | POLYGON ((-82.5462 9.56613, -82.93289 9.47681,... | 4.438723 | LINESTRING (-82.5462 9.56613, -82.93289 9.4768... | POINT (-84.17542 9.96567) |
17 | NIC | Admin-0 country | 1 | 5 | Nicaragua | NIC | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 198.0 | POLYGON ((-83.65561 10.93876, -83.89505 10.726... | 10.788943 | LINESTRING (-83.65561 10.93876, -83.89505 10.7... | POINT (-85.02032 12.84819) |
18 | HND | Admin-0 country | 1 | 5 | Honduras | HND | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 225.0 | POLYGON ((-83.14722 14.99583, -83.48999 15.016... | 9.554616 | LINESTRING (-83.14722 14.99583, -83.48999 15.0... | POINT (-86.58996 14.82295) |
19 | SLV | Admin-0 country | 1 | 6 | El Salvador | SLV | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 88.0 | POLYGON ((-89.35333 14.42413, -89.05851 14.340... | 1.746088 | LINESTRING (-89.35333 14.42413, -89.05851 14.3... | POINT (-88.8729 13.72609) |
20 | GTM | Admin-0 country | 1 | 3 | Guatemala | GTM | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 92.0 | POLYGON ((-92.22775 14.53883, -92.20323 14.830... | 9.228473 | LINESTRING (-92.22775 14.53883, -92.20323 14.8... | POINT (-90.36946 15.69936) |
21 | BLZ | Admin-0 country | 1 | 6 | Belize | BLZ | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 80.0 | POLYGON ((-89.14308 17.80832, -89.15091 17.955... | 1.872603 | LINESTRING (-89.14308 17.80832, -89.15091 17.9... | POINT (-88.70342 17.19709) |
22 | VEN | Admin-0 country | 1 | 3 | Venezuela | VEN | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 36.0 | POLYGON ((-60.73357 5.20028, -60.60118 4.9181,... | 74.438502 | LINESTRING (-60.73357 5.20028, -60.60118 4.918... | POINT (-66.16383 7.16213) |
23 | GUY | Admin-0 country | 1 | 4 | Guyana | GUY | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 8.0 | POLYGON ((-56.53939 1.89952, -56.7827 1.86371,... | 17.110779 | LINESTRING (-56.53939 1.89952, -56.7827 1.8637... | POINT (-58.9712 4.79023) |
24 | SUR | Admin-0 country | 1 | 4 | Suriname | SUR | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 39.0 | POLYGON ((-54.52475 2.31185, -55.09759 2.52375... | 11.751504 | LINESTRING (-54.52475 2.31185, -55.09759 2.523... | POINT (-55.91146 4.12001) |
25 | ECU | Admin-0 country | 1 | 3 | Ecuador | ECU | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 279.0 | POLYGON ((-75.37322 -0.15203, -75.23372 -0.911... | 20.382425 | LINESTRING (-75.37322 -0.15203, -75.23372 -0.9... | POINT (-78.38417 -1.45477) |
26 | PRI | Admin-0 country | 1 | 5 | United States of America | US1 | 1 | 2 | Dependency | 1 | ... | None | None | None | None | None | 182.0 | POLYGON ((-66.28243 18.51476, -65.7713 18.4266... | 0.788009 | LINESTRING (-66.28243 18.51476, -65.7713 18.42... | POINT (-66.47922 18.23722) |
27 | JAM | Admin-0 country | 1 | 4 | Jamaica | JAM | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 50.0 | POLYGON ((-77.5696 18.49053, -76.89662 18.4008... | 1.063979 | LINESTRING (-77.5696 18.49053, -76.89662 18.40... | POINT (-77.32425 18.13764) |
28 | CUB | Admin-0 country | 1 | 3 | Cuba | CU1 | 1 | 1 | Sovereignty | 1 | ... | None | None | None | None | None | 121.0 | POLYGON ((-82.26815 23.18861, -81.40446 23.117... | 10.022627 | LINESTRING (-82.26815 23.18861, -81.40446 23.1... | POINT (-78.96068 21.63175) |
29 | PRY | Admin-0 country | 1 | 4 | Paraguay | PRY | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 22.0 | POLYGON ((-58.16639 -20.1767, -57.87067 -20.73... | 35.429306 | LINESTRING (-58.16639 -20.1767, -57.87067 -20.... | POINT (-58.38739 -23.24804) |
30 | TTO | Admin-0 country | 1 | 5 | Trinidad and Tobago | TTO | 0 | 2 | Sovereign country | 1 | ... | None | None | None | None | None | 52.0 | POLYGON ((-61.68 10.76, -61.105 10.89, -60.895... | 0.639000 | LINESTRING (-61.68 10.76, -61.105 10.89, -60.8... | POINT (-61.33037 10.42824) |
31 rows × 173 columns
m = leafmap.Map(
center=(0.0, -80.0),
zoom=2, # Rango 1 - 20
width="800px",
height="800px",
#zoom_control=True,
#draw_control=False,
#scale_control=True,
fullscreen_control=False,
attribution_control=False,
toolbar_control=True
)
m.add_raster(
elevaciones,
colormap='coolwarm',
layer_name='Elevación snmm'
)
m.add_data(malaquita_riqueza_gdf,
column = "registros",
scheme='quantiles',
cmap='viridis',
layer_name= "Riqueza Siproeta",
legend_title= "Riqueza Siproeta"
#tooltip=['ADMIN', 'registros']
)
m
Map(center=[0.0, 0.0], controls=(ZoomControl(options=['position', 'zoom_in_text', 'zoom_in_title', 'zoom_out_t…
Conclusiones:¶
Se utilizaron las librerías del lenguaje de programación Phyton para la importación, depuración, estructuración de DataFrames y GeodataFrames, así como para la importación de capas en formato raster GeoTIFF, se descargaron de la nube o web capas raster con variables climáticas en una resolución de pixel de 2.5 minutos de arco y una capa raster de elevasiones snmm (sobre nivel medio del mar) implementándose en el graficado de la especie Siproeta. El lepidótero mostró tener un distribución nativa en el contiente americano, desde Texas (USA) hasta el Brasil. El páis con mayor número de registros es los Estados Unidos Mexicanos (México); Canada, Groenladia, Chile no presentaron registros de la presencia de la especie, no se descarta que en un futuro se registren observaciones como es el caso del lepidóptero Danaus plexippus con registros desde el Canada hasta el Brasil. Se generó un mapa interactivo con la librería leafmap para sobreponer o un "stack" de la imagen raster de elevaciones snmm y la capa (layer) de los registros del lepidóptero en el continente americano, en donde el lepidóptero puede habitar desde los O mts snmm hasta los 3,000 mts snmm. Procesados a posteriori pueden arrojar información sobre zonas geográficas de distribución, como es el caso de los Estados Unidos Mexicanos que presenta la región del Neoártico y del Neotrópico, o perpetrarse análisis de modelación de nichos ecológicos que pueden ser de utilidad para posible aprovechamiento de la especie como un polinizador en la agricultura regenerativa y regeneración de hábitats.