@MajorLeagueUmp or @[TeamNickname]Ump
You're watching a baseball game. The pitcher throws a pitch right down the middle of the plate, but the umpire calls it a ball. Was it really a bad call or did you just have a bad angle.
@MajorLeagueUmp or @[TeamNickname]Ump tweets bad ball and strike calls in realtime and includes:
- A picture of the pitch location
- Percentage of the time a pitch in that location is called a strike
- How far the pitch was from the edge of the *real life* strike zone
On TV, FoxTrax will show you where the pitch went relative to the rulebook strike zone, but it won't tell you if pitches in that location are typically called strikes. I found this frustrating because any baseball fan knows that the real strike zone is different than the rule book zone.
To find the actual zone I:
1. Downloaded Pitch F/X data from the last four years.
2. Built a fine-grain heat-map of called-strike percentages.
3. Applied some gaussian filters.
4. Converted the heat-map into perimeters
(inside this line it is a strike 78% of the time, etc).
Polar coordinates finally turned out to be good for something.
The tweets are updated by:
1. Nodejs server on heroku that monitors Pitch F/X data in real-time.
2. Each pitch is stored in Firebase.
3. Compare the pitches to the actual zone from above.
4. If the call was really bad, generate an SVG and tweet.
I've been researching the strike zone on and off for the last 5 years. At first, I wanted to answer two questions.
1. Where are balls and strikes actually called?
2. How consistent are umpires in making those calls?
Some quick answers:
1. They widen the plate a tad.
2. They really round off the corners.
The strike zone is closer to a circle than a square.
3. Left handed hitters face a much larger strike zone
that extends well off the outside of the plate.
4. They are actually pretty consistent, but not perfect.