Este repositorio contiene datos, código y notebooks relacionados con mi curso de Visualización de Información y mi trabajo diario. Lo he estructurado en un paquete llamado aves
, sigla descrita en el título de este documento. El paquete tiene las siguientes funcionalidades:
- Funciones utilitarias para trabajar con DataFrames de
pandas
yscikit-learn
. - Técnicas de visualización para datos geográficos.
- Técnicas de visualización para redes.
Para comprender la funcionalidad del código puedes explorar las unidades de práctica en la carpeta notebooks
:
- Los Datos y las Herramientas: Encuesta Origen-Destino + Python
- Tablas: análisis de la EOD.
- Mapas: uso de
geopandas
y análisis de la EOD. - Redes: uso de
graph-tool
y análisis de la EOD.
Además hago live coding en Zorzal TV @ Twitch. Los códigos resultantes de esas sesiones también se encuentran en la carpeta notebooks
.
El repositorio incluye los siguientes datasets:
- Encuesta Origen-Destino, Santiago 2012 (por SECTRA).
- Arenas' Jazz Network.
Si usas Windows, te recomiendo instalar el Windows Subsystem for Linux.
Después de clonar el repositorio, debes instalar el entorno de conda:
make conda-create-env
make install-package
Es posible que ya tengas un entorno de conda en el que ejecutes Jupyter. En ese caso, puedes agregar este entorno como kernel ejecutando este comando desde el entorno que contiene Jupyter:
python -m ipykernel install --user --name aves --display-name 'AVES'
Para replicar los gráficos de los notebooks, debes instalar la fuente Fira Sans y Fira Code. Copia la fuente en la carpeta .fonts
de tu directorio principal y luego ejecuta esto en un intérprete de Python o en un notebook:
from matplotlib.font_manager import _rebuild; _rebuild()
Para añadir o actualizar dependencias:
- Agrega el nombre (y la versión si es necesaria) a la lista en
environment.yml
. - Ejecuta
conda env update --name aves --file environment.yml --prune
. - Actualiza el archivo
environment.lock.yml
ejecutandoconda env export > environment.lock.yml
.
- Parte del tiempo dedicado a este código ha sido financiado por el proyecto ANID Fondecyt de Iniciación 11180913.
- La implementación de Force Directed Edge Bundling está inspirada en la versión de Javascript de esa técnica, y fue inicialmente desarrollada por Vera Sativa y luego modificada por Tabita Catalán. Yo tomé esa versión inicial y la adapté para que fuese 100% Python y funcionase con el resto de la biblioteca.
- Este repositorio fue creado gracias al template de Cookie Cutter / Data Science with Conda hecho por Patricio Reyes.