MBTA Bus Plotter

September 23rd, 2010
mbta, mbtaplot, programming, python, tech, transport
I've been meaning to learn web programming, and I like transit, so I made a bus plotter for the mbta. This was mostly for learning, as you can already get most of this functionality elsewhere. For example, nextbus's webservice can show you the 77 bus with all it's current locations and so can I. One nice thing about writing my own, though, is that I can tweak features. I can turn off the bus display, plot multiple routes, and indicate bus frequency with shading. One thing I want to do is make it update the buses automatically (right now you need to click the routes to update bus locations, and you can only do it every 45 seconds), or even beter, update them with predicted locations based on where they were last time we heard from them and how long it's been since.

One thing this let me do it make a map that I've wanted for a while: bus frequency along boston area routes:

Routes with more buses are darker and fatter. (This doesn't correctly deal with routes that go along the same road, and shorter routes will appear to have less frequent service because they need fewer buses to get the same headways. I should probably replace this with something that looks at stop predictions and takes the longest expected time before the next bus arrives as an indication of how infrequent service is on that line.)

While I should warn you that this is very memory and processor intensive, you can generate this yourself if you'd like.

The code is all online at github under mbtaplot. The javascript is probably not very good; this is my first time writing in that language. If you're curious about the design you can read the readme.

Comment via: facebook, substack

Recent posts on blogs I like:

Thing of Things AI use policy

dynomight recently wrote an article calling for bloggers to state publicly whether and how they use AI

via Thing of Things July 6, 2026

Agentic test processes, LLM benchmarks, and other notes on agentic coding from Galapagos Island

I've been using AI fairly heavily since last November and the whole thing is a funny experience. An agent will do something that, if a human did it, you'd immediately fire them. My reaction, of course, is to act as if this is great and spin up a t…

via Posts on July 3, 2026

Variable fonts aren't universally supported

I make a lot of webpages. I also use Lockdown Mode on iOS and MacOS for a bit of extra security. Sometimes I realize that I forgot to test on Safari and it looks like crap, or I test and don’t notice that there’s been a problem for months (as was the case…

via Home June 27, 2026

more     (via openring)