clock menu more-arrow no yes mobile

Filed under:

Introducing Advanced Stats TV Graphics!

An attempt to bridge the gap between Brewers broadcasts and sabermetrics.

St. Louis Cardinals v Milwaukee Brewers - Game Two Photo by Christian Petersen/Getty Images

Opening Day is right around the corner, which will finally put an end to the lifeless, depressing, and seemingly eternal five-month stretch that does not feature meaningful Major League Baseball games. (Don’t get me wrong, the annual quest for the Cactus Cup is riveting stuff, but it just isn’t the same.)

Most of us will be glued to our TV (or laptop) screens nearly every night for the next seven months, which means we’re going to be seeing plenty of graphics like this one:

Fox Sports Wisconsin

This graphic is supposed to tell us how Jesus Aguilar performed at the plate last season. The problem is that it really doesn’t tell us that. Seeing that Aguilar hit lots of dingers last year is cool, but I really could care less about the other two stats. Batting average completely ignores walks, doesn’t weigh different outcomes properly, and doesn’t account for contextual factors like park effects and the current run-scoring environment. RBI are heavily dependent on the other hitters in the lineup getting on base. You can’t drive in as many runs if you don’t have people to drive in. These two stats don’t tell us much at all, especially when there are no additional numbers shown to add more context. We have so many wonderful statistics at our disposal today that give us a much clearer picture of how well a hitter is performing. The same goes for pitchers: wins and losses (yuck) and ERA don’t tell nearly the whole story.

I’ve gotten tired of seeing these outdated and uninformative numbers show up on my TV screen like they’re supposed to tell me something significant. Why should I have to pull up someone’s FanGraphs page during games to actually find out how they’re doing? Recently, I decided that instead of whining about it all the time, I would attempt to remedy this problem. I wanted to find a way to display a player’s advanced stats while watching a game.

There was some trial and error involved, but I’m pretty pleased with how the initial version of this project has turned out. This was initially going to be something designed for my personal use only, but I’ve gotten positive feedback from the people I’ve shared it with, so I decided to make it available for anyone to use and enjoy. With that, I proudly present these new advanced stats graphics.

What is it?

The graphics are a Google Slides presentation that can be scrolled through during Brewer games. There’s a slide for each player on the active roster, as well as slides for players on the 40-man roster who figure to see time with the big-league club throughout the year.

Gone are the days of seeing batting average and RBI on your TV screen with no further context provided. The stats featured on the graphics for hitters include:

  • On-base percentage, slugging percentage, and OPS
  • Batting Average on Balls in Play (BABIP)
  • Home runs (the only traditional stat I opted to keep—hitting dingers is still cool)
  • Weighted Runs Created Plus (wRC+)
  • Average Exit Velocity and Hard Contact Rate (as measured by Statcast)

There are also graphics for pitchers. The stats on these slides include:

  • ERA and ERA estimators - Fielding Independent Pitching (FIP) and Deserved Run Average (DRA)
  • Strikeout and walk rates
  • Hard Contact Rate (as measured by Statcast)

The final feature of the pitcher graphics is my personal favorite: pitch repertoire breakdowns for each pitcher. These breakdowns feature stats from Baseball Savant, including:

  • How often the pitcher throws each pitch
  • The average velocity at which he throws each pitch
  • Opponent Weighted On-Base Average (wOBA) against each pitch

How do I use it?

As was mentioned previously, these graphics are in the form of a Google Slide presentation. At the end of this post is a link to the presentation that anyone may use to access the graphics.

You can pull up the graphics on any device (such as your laptop or phone) during the game. If you’re like me, you can set up a second monitor next to your TV and connect your laptop to that monitor. How exactly you’d like to configure it is up to you.

Before most games, I’ll reorder the slides to match the starting lineup for that day. When the next hitter comes up, all you have to do it advance the presentation one slide, and it will display the advanced stats for that hitter.

Once the lineup turns over, you’ll have to manually return to the leadoff hitter’s slide. I assume most of you know how to do this, but in case you don’t, I’ll explain it quickly. Go to the menu in the bottom left corner and click on “Slide [number]” to pull up the complete list of slides. Each player’s graphic is labeled with their last name so you can easily find whichever player you’re looking for.

As the game progresses and there are strategic moves made, such as pitching changes and pinch-hitters, you’ll have to manually find and select the player who is pitching or hitting. I did add extra slides to help divide the players into starters, bench players, and pitchers.

For home games, the starting pitcher’s slide will be first because he’ll be pitching the top half of the inning. For road games, his slide will be at the end of the starting lineup, and you’ll have to select it manually when he takes the mound in the bottom half of the inning. There are no graphics that contain offensive stats for pitchers; I didn’t feel like taking the time to make extra graphics just to show crappy hitting stats. Instead, there’s a slide labeled “Pitcher’s Spot” that serves as a placeholder.

Are you going to update all of the stats every day?

The stats will be updated on a daily basis, but I don’t have to do all of that myself. I have a spreadsheet set up for each player, and these spreadsheets are importing data from FanGraphs and Baseball Savant (plus Baseball Prospectus for DRA). The slides, in turn, are linked to these spreadsheets.

The spreadsheets automatically refresh hourly, so when the websites update their stats, the spreadsheets and graphics will update as well.

Additional Notes

  • For most games, the slides will be rearranged to match the starting lineup. However, sometimes life happens, and I won’t have time to take care of that. That’s especially true early in the season, when I have to balance school and other responsibilities.
  • The graphics will have 2018 stats for the first 10 or 15 games. After that, I’ll switch them to 2019 stats and see how well the auto-update works.
  • I haven’t perfected this yet. If you choose to use these graphics, please have some patience if they’re not working or updating like they’re supposed to. I’m essentially testing out this concept on the fly.
  • There may be changes made to the file throughout the season as I find out what works and what doesn’t. This setup is far from perfect, but I think it’s a good start. The ultimate goal is to make it as informative and efficient as possible.
  • If this project doesn’t work as well as I’m hoping it will, I’ll put an end to it pretty quickly. My hope is that everything works smoothly and that these graphics will be available (and accurate!) for the majority of games.

With all that said, you can click the link below to access the slideshow.


Any feedback or suggestions on how to improve this project are welcome! You can choose to give these graphics a try if you’d like, or you can just carry on watching games the way you always have. If anyone does choose to use these graphics, I hope they enhance your viewing experience and make it even more informative.