This project processes and visualizes 2024 NYC Citi Bike trip data. It includes data preprocessing with Python, data aggregation using C++ with OpenMP, and final visualization as an interactive heatmap.
scripts/preprocess.py: Preprocesses raw Citi Bike datacpp/aggregation.cpp: Aggregates trip data in sequential/parallel using OpenMPscripts/visualize.py: Generates a heatmap from aggregated datanyc_citibike_heatmap.html: Output HTML file for visualization
- Python 3
- C++ compiler with OpenMP support (e.g.,
g++-14) - macOS (for
opencommand, or modify accordingly for other OS)
Run all commands together:
make allCreate a Python virtual environment and install dependencies:
make setupRun the Python script to preprocess raw data:
make preprocessCompile the C++ aggregation program:
make buildExecute the compiled C++ program:
make runGenerate the heatmap using the processed data:
make visualizeRender the heatmap in your default browser (macOS):
make open