miximaps: library to support adelphi university's map club
==========================================================
`miximaps` is a Python library to make it easier to work with maps and geospatial data.
It builds on popular libraries like `pandas`, `geopandas`, and `folium`; 
as well as `census` and `pygris` for access to US Census data.

It was created to support the Adelphi University Manhattan Institute for 
STEM and the Imagination (MIXI) _critical cartography and map club_. It's
goals is to make it easier and faster to work with geospatial data,
especially around New York City and the metro area.

See <https://mixi.nyc> for more information.

Notebook examples:
------------------
1. **[census-table_median-inc.ipynb](basics/census-table_median-inc.ipynb)**
   This notebook shows how to use the miximaps package to load a basic US Census ACS 5 table
   for the tracts in the NYC metro area, and to create a choropleth map of median household income.\
   [[short video walkthrough](https://youtu.be/yeI8YxHCZrU)] or [[longer walkthrough](https://youtu.be/HXNipF-6YRw)]
2. **[nyc-311-load-data.ipynb](basics/basics/nyc-311-load-data.ipynb)**
   A very simple notebook to load 311 data using `pandas` and to look at the most common complaints. 
3. **[myc-311-map.ipynb](basics/nyc-311-map.ipynb)**
   A notebook to load 311 data using `pandas` and to create a point thematic map of the most common complaints. Export data for QGIS.
4. **[parking-complaints.ipynb](basics/parking-complaints.ipynb)**
   Merges 311 with zip code geographies to create a choropleth of parking complaints.
5. **[distance-from-subway.ipynb](basics/distance-from-subway.ipynb)**
   Ths notebook is a little bit more complicated. It loads our median income census data for NYC tracts and
   locations of public pools from NYC Open Data. It then merges the two datasets using a spatial join
   function from `GeoPandas` to find the closest pool to each tract. It then creates a scatter plot
   and calculates a Pearson R correlation to see if there is a relationship between median rent and distance to the nearest pool (there isn't).
6. **[rent-change.ipynb](housing/rent-change.ipynb)**
   This takes a look at multiple years of census data to create a
   layered map, allowing a glimpse at how NYC rents have changed over
   the period of 2010-2024.
7. **[scrape-boe.ipynb](voting/scrape-boe.ipynb)**
   Demonstrates how to create pandas DataFrames from static web pages, using
   the 2025 NYC Mayoral Election and Zohran Mamdani's historic victory
   as an example.
8. **[president.ipynb](voting/president.ipynb)**
   Uses the structured data results from the NYC Board of Elections
   to load the results from the 2024 presidential election in NYC.
   Sparse comments and annotations on this one.


**_[Click here for data files to download](https://adelphiuniversity-my.sharepoint.com/personal/mcuringa_adelphi_edu/_layouts/15/guestaccess.aspx?share=Ev9gP83bK7tFtdBBa3SvbFEBy15l21AtoAOQ6TXSJIodSw&e=sfPGrk)_**