Skip to content

abachant/RIPTA-dashboard

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

38 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

RIPTA-dashboard

Visualizing realtime data from RIPTA's API using Dash.

PRs Welcome!

An example of the interface:
closeup of hovertext

An animation sped up for effect:
animation of RIPTA-dashboard

Requirements

Accounts

Python Packages

  • pandas
  • numpy
  • matplotlib
  • plotly
  • dash
  • dash_core_components
  • dash_html_components

Instructions

Setting Up Credentials

  1. If you don't already have one, setup an account with Plotly and with Mapbox.
  2. Copy config-template.json to config.json:
    • cp config-template.json config.json
  3. In config.json add in your Plotly username and API Key and your Mapbox access token.

Running Locally

  1. run python app.py
  2. press control + c to terminate

Data Structure

Vehicle Position Data

A dictionary with two keys: "header" and "entity". "header" is another dictionary that contains metadata. "entity" is a list of dictionaries. Each "entity" contains a "vehicle" dictionary with data about a specific bus and location, speed, route etc.

Trip Updates Data

A dictionary with two keys: "header" and "entity". "header" is another dictionary that contains metadata. "entity" is a list of dictionaries. Each "entity" is dictionary whose value is a list of other dictionaries, each of which contains data about a specific bus route including it stops and their delay times and the particular bus (vehicle_id) that is on the route.

Dash

Learn more about Dash.

View their documentation.

About

Visualizing realtime data from RIPTA

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published