We were curious about what a community would look like from a commuter/tourist point of view: how convenient is it to navigate a neighbourhood on foot, by bike, and by transit?

What it does

Our nwHacks project makes use of Google Maps API to provide location and travel time data and employs Plotly to visually present travel times within a region in a 3D topography map, given a mode of transportation. The project is presented on a web page featuring an interactive Dash display.

After choosing a starting point and a mode of transportation, we build a 3-D visualization of the connectedness of your region. Height on our plot corresponds to the time it takes to arrive at that destination. For example, if using the transit mode of transportation, you will see a lower value along train lines and higher values in hard-to-access communities.

How we built it

  • Make API calls to Google Maps, then use Plotly visualization to generate 3D topography map with respect to longitude, latitude, and travel time in a region of the given location. Develop a user interface with Dash.
  • Can increase the area presented by increasing the grid size in API calls.
  • This could easily be scaled up and hosted.

Challenges we ran into

  • Using Google API was a steep learning curve, but once we figured out API keys and the formatting, Google API’s were extremely useful and powerful!
  • Integrating a google maps image into our Plotly visualization took some time. This was mainly due to the many moving parts and formats which needed to work together.
  • Understanding the latitude and longitude coordinate system of the globe was another challenging but enriching learning experience.

Accomplishments that we're proud of

  • Made a program that works and a really cool visual to boot!

What we learned

  • We came to appreciate how useful google’s API calls can be. It was a new thing for all of us!
  • We learned to create 3D visualizations with Plotly.
  • We also learned that we could create web pages with interactive graphics completely in Python using the Dash framework.

What's next for Transportation Topology

To improve the project, we can explore the following areas:

  • Allow the use of multiple modes of transportation
  • Use multiple layers of plots to make comparison between different modes of transportation
  • Identify well-connected areas
  • Rank most cycle-able/transit-able cities
Share this project: