All Projects → transitland → Transitland Processing Animation

transitland / Transitland Processing Animation

Licence: mit
Animating scheduled transit trips using the Transitland API and Processing

Programming Languages

python
139335 projects - #7 most used programming language
processing
702 projects

Projects that are alternatives of or similar to Transitland Processing Animation

GTFS-ride
GTFS-ride is an open standard for storing and sharing fixed-route transit ridership data.
Stars: ✭ 43 (-82.87%)
Mutual labels:  transit, transportation
Tidytransit
R package for working with the General Transit Feed Specification (GTFS)
Stars: ✭ 84 (-66.53%)
Mutual labels:  transit, transportation
Transitive.js
Transit data visualization
Stars: ✭ 628 (+150.2%)
Mutual labels:  transit, transportation
transitland-atlas
an open directory of mobility feeds and operators — powers both Transitland v1 and v2
Stars: ✭ 55 (-78.09%)
Mutual labels:  transit, transportation
R5
Routing engine for multimodal (transit/bike/walk/car) networks with a particular focus on public transit.
Stars: ✭ 153 (-39.04%)
Mutual labels:  transit, transportation
Realtime-Port-Authority
Realtime transit tracker of Pittsburgh's Port Authority buses using the realtime PAT API using Google Maps to Display the Maps
Stars: ✭ 54 (-78.49%)
Mutual labels:  transit, transportation
Transitland Datastore
Transitland's centralized web service API for both querying and editing aggregated transit data from around the world
Stars: ✭ 101 (-59.76%)
Mutual labels:  transit, transportation
Wotan
Automagically remove trends from time-series data
Stars: ✭ 86 (-65.74%)
Mutual labels:  transit
Rrrr
RRRR rapid real-time routing
Stars: ✭ 134 (-46.61%)
Mutual labels:  transit
Nextbussg
An app to show everything bus related in Singapore, including arrival times and a directory
Stars: ✭ 86 (-65.74%)
Mutual labels:  transit
Vbb Cli
A CLI for Berlin & Brandenburg public transport.
Stars: ✭ 70 (-72.11%)
Mutual labels:  transit
Tpp
Repositório central para organização total (Issues, README's, LICENSE's, etc)
Stars: ✭ 92 (-63.35%)
Mutual labels:  transportation
Bluesky
The open source air traffic simulator
Stars: ✭ 146 (-41.83%)
Mutual labels:  transportation
Piknik
Copy/paste anything over the network.
Stars: ✭ 2,221 (+784.86%)
Mutual labels:  transit
Mtapi
JSON proxy server for the MTA's realtime New York City subway feed
Stars: ✭ 206 (-17.93%)
Mutual labels:  transit
Onebusaway Application Modules
The core OneBusAway application suite.
Stars: ✭ 174 (-30.68%)
Mutual labels:  transit
Sente
Realtime web comms for Clojure/Script
Stars: ✭ 1,626 (+547.81%)
Mutual labels:  transit
Complete street rule
The Complete Street Rule for ArcGIS CityEngine is a scenario oriented design tool intended to enable users to quickly create procedurally generated multimodal streets.
Stars: ✭ 81 (-67.73%)
Mutual labels:  transportation
Gtfs To Html
Build human readable transit timetables as HTML or PDF from GTFS.
Stars: ✭ 119 (-52.59%)
Mutual labels:  transit
Peartree
peartree: A library for converting transit data into a directed graph for sketch network analysis.
Stars: ✭ 116 (-53.78%)
Mutual labels:  transit

Visualizing scheduled transit frequency

TransitFlow uses Mapzen's Transitland API to download transit schedule data and Processing with Unfolding Maps to animate scheduled transit frequency.

TransitFlow was created by Will Geary during an internship at Mapzen in 2017. See this blog post for more info: https://mapzen.com/blog/animating-transitland/

Here is an example animation generated for San Francisco with a single command:

python transitflow.py --name=san_francisco --bbox=-122.515411,37.710714,-122.349243,37.853983 --clip_to_bbox

IMAGE ALT TEXT

See here for more transit flow visualizations.

Install Processing

  1. Download Processing 3.
  2. Download Unfolding Maps version 0.9.9 for Processing 3.
  3. Navigate to ~/Documents/Processing/libraries on your machine.
  4. Drag and drop the unzipped Unfolding Maps folder into ~/Documents/Processing/libraries.
  5. Open Processing, navigate to Sketch > Import Library > Add Libary. Search for "Video Export" and click Install.
  6. Quit and re-open Processing.

Instructions

  • Download the repository, unzip it and cd into it
  • pip install -r requirements.txt to install the python requirements (pandas, numpy, requests)
  • cd transitflow

Now, you are ready to download transit schedule data and generate visualizations.

There are two ways to go about using this tool:

1) Search by transit operator Onestop ID

You can visualize a single transit operator by passing in the operator's Onestop ID. What's a Onestop ID, you ask? As part of Transitland's Onestop ID Scheme, every transit operator, route, feed and stop are assigned a unique identifier called a Onestop ID.

You can look up an operator's Onestop ID using the Transitland Feed Registery. For example, the Onestop ID for San Francisco BART is o-9q9-bart.

Visualize one day of BART transit flows:

  • python transitflow.py --name=bart --operator=o-9q9-bart

IMAGE ALT TEXT

2) Search by bounding box

You can also visualize transit flows by searching for all operators within a bounding box. The bounding box must be in the format: West, South, East, North. I like using bboxfinder to draw bounding boxes. For example, here's the command to visualize transit flows in Chicago:

  • python transitflow.py --name=chicago --bbox=-87.992249,41.605175,-87.302856,42.126747 --clip_to_bbox --exclude=o-9-amtrak,o-9-amtrakcharteredvehicle

IMAGE ALT TEXT

Note, the use of --clip_to_bbox. This command will clip the dataset to only include transit vehicle trips within the specified bounding box, both in the geo-visualization and in the vehicle count calculations that drive the stacked bar chart.

Also, note the optional use of --exclude. This command will exclude specified operators, Amtrak in this case.

Play your animation

Navigate to sketches\{name}\{date}\sketch and open the sketch.pde file.

This should open the Processing application. Simply click Play or command + r to play the animation.

Change map providers

Cycle through the first two rows on the keyboard (1 to 0, q to u) to see the built in map provider options.

Read more about Unfolding Maps map providers here: http://unfoldingmaps.org/tutorials/mapprovider-and-tiles.html

Panning and zooming

You can pan around on the map by clicking and dragging it. You can zoom in with Shift + "+" and zoom out with "-".

Exporting to video

Open sketch.pde file.

  • For a quick, medium quality video, set boolean recording = true;
  • For a high quality video, set boolean recording = true; and boolean HQ = true;. This will generate 3,600 .tiff frames that can be stiched together using ffmpeg or Processing's built in movie maker tool.

Command line arguments

Key Status Description Example
--name required The name of your project --name=boston
--date optional Defaults to today's date --date=2017-08-15
--operator optional Operator Onestop ID --operator=o-drt-mbta
--bbox optional West, South, East, North --bbox=-71.4811,42.1135,-70.6709,42.6157
--clip_to_bbox optional Clip results to bounding box --clip_to_bbox
--exclude optional Operators to be excluded --exclude=o-9-amtrak
--apikey optional Mapzen API key --apikey=mapzen-abc1234

A Mapzen API Key is optional, but recommended for faster results. Sign up for a Mapzen API Key here.

Troubleshooting

If your visualization is not working as expected...

  • Make sure that the operator of interest actually has service on the specified date (no --date argument defaults to today's date). Some operators are better than others at sharing updated data. For example, Mexico City's Metrobús has a service_end_date of 2016-08-17. So, you would need pass in a --date=2016-08-17 or earlier or to download and visualize the Metrobús.

  • Make sure that Transitland has coverage in your area of interest. You can search for transit operators and feeds using the Transitland Feed Registery. Is Transitland missing a feed? Let us know!

Attribution

Sources of inspiration

See more visualizations created with TransitFlow here: https://vimeopro.com/willgeary/transit-flows

Press & Recognition

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].