Skip to content

Parse NYC MTA GTFS (General Transit Feed Specification) data to create a simplified graph of the NYC Subway and serve routes via an open API. Front end in React

Notifications You must be signed in to change notification settings

daniel-burton/Find-Subway-Meeting-Place

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

75 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

gtfs_graph_builder

Parse NYC MTA GTFS (General Transit Feed Specification) data to create an idealized graph of the NYC Subway.

The graph is idealized: all travel times are averaged, I only examined weekday daytime non-rush-hour schedules, and I deleted odd trains that aren't always running. The GTFS transfer file only indicated travel time between platforms, so I added 500 seconds of wait time to represent a rough average of how often trains come. Probably a little optimistic!

The current graph builder works for the 21 December 2018 NYC Subway GTFS, as downloaded from https://transitfeeds.com/p/mta/79.

The site is now deployed to DigitalOcean! It's at https://www.danielburton.dev. Running on Gunicorn with NGINX as a reverse proxy server.

The bash script get_gtfs.sh will create a 'data' folder, download and extract the appropriate data, then process the data into a graph in the new folder 'graph'.

The flask app in /server will start an API that responds to route or meeting place queries with a route JSON.

The python interface, interface.py, is a command line front end with fuzzy matching of user input to station names. meeting_interface.py is a work in progress that will do the same.

Next steps:

  • solve some bugs having to do with walking-- it's telling the user to walk in odd places.
  • find a better workflow for using Jupyter Notebooks with git, as well as transferring code between notebooks and python scripts.
  • improve the CSS for the web app.
  • create a simple visualization of the routes / found meeting places for the web app.
  • improve narration of subway routes.
  • work on the autocomplete for the React app... it's skipping certain stations.

About

Parse NYC MTA GTFS (General Transit Feed Specification) data to create a simplified graph of the NYC Subway and serve routes via an open API. Front end in React

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published