CoolFace
Apppublic

natalia200124/mapacooperacionInternacional

sourceHugging Faceupdated 1mo agoView on Hugging Face
0likes
App README

🌐 Mapa de Cooperación Internacional en Colombia

Dashboard interactivo construido sobre la base CICLOPE de APC-Colombia (DGDCI), con dos vistas:

  1. 1.🗺️ Mapa por Departamento — recursos de cooperación internacional, actores y temáticas por departamento colombiano.
  2. 2.🌍 Mapa de Cooperación Mundial — países que cooperan con Colombia, monto y temáticas, con la cooperación multilateral (Naciones Unidas, Unión Europea, Banca Multilateral, Fondos Multilaterales Globales) mostrada aparte.

Dos formas de desplegarlo: reutilizando uno de tus Spaces existentes de Hugging Face (Docker), o gratis en Streamlit Community Cloud (vía GitHub). Ambas opciones se explican abajo.

Filtros

  • Fecha de inicio del proyecto (rango).
  • Estado: En ejecución / Finalizado — se calcula dinámicamente cada vez que se abre la app, comparando la fecha de finalización de cada proyecto contra la fecha de hoy (no es un campo de texto fijo en la base, que podría quedar desactualizado).
  • Temática (categoría DCI).
  • (Avanzado) Nivel de confianza de la categorización automática.

Reglas de datos aplicadas automáticamente

  • Solo se incluye cooperación de actores internacionales (ACTOR PRIMER NIVEL == 'INTERNACIONAL') — filtro fijo en el código, no editable desde la interfaz.
  • Los actores/países cooperantes se identifican por la columna ORIGEN DEL ACTOR (país u organismo real que coopera). El detalle de actores específicos (para los rankings y el KPI "Actores distintos") usa la columna NOMBRE ACTOR.
  • Los departamentos se unen a un geojson oficial (DANE 2018) para el mapa; "Ámbito Nacional" (proyectos sin departamento específico) se excluye del mapa pero se incluye en los totales generales.

Estructura del proyecto

├── app.py                      # App principal de Streamlit
├── utils/
│   └── data_loader.py          # Lee el .xlsx directamente y lo procesa (con caché)
├── assets/
│   └── colombia_dptos.geojson  # Geometría de los 33 departamentos (DANE 2018)
├── data/
│   └── BBDD_ciclope_categorizada.xlsx   # Tu base real — la app la lee directo
├── Dockerfile                  # Solo se usa si despliegas en un Space de Hugging Face
├── .dockerignore
└── requirements.txt

Opción A — Reutilizar un Space existente de Hugging Face (Docker)

Como el candado de pago de Hugging Face es solo para crear Spaces nuevos con SDK Docker, si ya tienes un Space Docker (de cuando era gratis) que ya no uses, puedes reemplazar todo su contenido por esta app, sin crear nada nuevo:

  1. 1.Entra al Space que quieras reutilizar → pestaña Files.
  2. 2.Borra los archivos viejos de ese Space (o simplemente sube los nuevos encima si tienen los mismos nombres).
  3. 3.Sube TODO el contenido de esta carpeta (app.py, Dockerfile, requirements.txt, README.md, y las carpetas assets/, data/, utils/ completas).
  4. 4.El Space reconstruye solo con el nuevo Dockerfile — no hace falta crear un Space nuevo ni tocar la configuración de SDK (ya está en Docker).

Opción B — Streamlit Community Cloud (gratis, vía GitHub)

  1. 1.Sube todo el contenido de esta carpeta a un repositorio de GitHub (público, para el plan gratuito sin restricciones).
  2. 2.Entra a share.streamlit.io e inicia sesión con tu cuenta de GitHub.
  3. 3.Clic en "New app" → elige el repositorio, la rama (main) y el archivo principal (app.py).
  4. 4.Clic en "Deploy". Tarda unos minutos la primera vez.

Nota: la app se "duerme" tras ~12 horas sin visitas (el siguiente visitante espera ~30 segundos mientras despierta), y solo se permite 1 app privada gratis — las demás deben ser públicas (y como la base queda dentro del repo, un repo público expone también los datos, no solo el código; tenlo en cuenta si la información es sensible).

Cómo actualizar los datos (cualquiera de las dos opciones)

La app lee data/BBDD_ciclope_categorizada.xlsx directamente — no hay ningún paso intermedio ni script que correr.

  • Opción A (Hugging Face): sube el .xlsx nuevo a la carpeta data/ del Space (mismo nombre de archivo). La app detecta el cambio sola.
  • Opción B (Streamlit Cloud): reemplaza el archivo en tu repositorio de GitHub (git add / commit / push, o arrastrándolo en la web). Streamlit Cloud redespliega solo al detectar el cambio.