close
close

Squared velocity and launch angle: A visual study

Squared velocity and launch angle: A visual study

D. Ross Cameron-USA TODAY Sports

Statcast’s bat tracking data continues to be fascinating to me. I still find it overwhelming. Hitting is so complex that I can’t imagine boiling it down to a few numbers. Even when I look at more complex bat tracking presentations, such as squared ratio, sometimes I don’t fully understand what it means.

To give you an example: Last week, when I was looking at Manny Machado’s early-season struggles, I discovered that he was bouncing the ball more when he was hitting the ground than when he was lifting the ball in the air. Sounds bad to me – tough people don’t actually pay their bills. But I didn’t have much to compare it to other than league averages for these rates. I also had no context as to how squared-off shapes work for different successful hitters.

What should an analyst do? If you’re like me in 2024, one option is preferred: ask my friendly neighborhood model to help me create a visualization. I had an idea of ​​what I wanted to do. Basically, I wanted to create a graph showing how a given hitter’s squared strike rate varies with launch angle. There’s a difference between receiving the ball like Luis Arraez – the line drives into the goal all day long – and doing it like Machado. I was hoping a visual representation would make it a little clearer.

First: I downloaded every ball in the game from this year where Statcast recorded bat speed, pitch speed, launch angle, and exit velocity. I then manually calculated whether each batted ball was squared. As a reminder, a batted ball is squared if it is traveling at 80% of its maximum theoretical speed, as measured by the equivalent formula: 1.23 * bat speed + 0.23 * pitch speed at home plate, which is approximately 92% of the pitch speed on deceleration. If you want to follow along with me at home, you can find that data here. If not, please bear with me as I would like to show you some photos I took.

Then Gemini (my favorite LLM, although I’m sure others would end up in about the same place) and I got to work. We calculated the square of each hitter’s speed at each angle. I had to make some decisions here about how to aggregate the data. I decided to increase each angle by looking for balls hit within 10 degrees of it in both directions, and then after completing this exercise, I threw away any buckets that did not contain at least 20 data points. This way there is some data overlap, but the sample sizes are small enough and I think the batter’s intentions are broad enough that if you’re wondering how often someone hits a batted ball at a 15-degree angle, looking at 5 degrees and 25 degrees are both useful input data.

These are things I had in mind, but I wasn’t entirely sure how to turn the concept into a program that could create charts based on my idea. But it’s nothing that I couldn’t solve after a few hours of coming up with ideas, translating them into Python code using generative AI, finding problems in the code, coming up with new ideas to solve those problems, translating those new ideas into new code, finding new problems… you know.

Basically, I wanted to have a graph showing how good Machado is at lifting the ball depending on whether he hits it down, flat, or up. Good news. I have a chart exactly like this:

He evens out ton his contact on earth, as we knew. He uses his bat speed much less often with tight launch angles in the 20-degree range. That doesn’t sound like Arraez, the bat-controlling god at all. But what does Arraez’s graph look like? It looks like you’d expect:

As a side note, the size of the circles is proportional to the percentage of contact in that bucket. The largest Arraez circles are various types of linear drives. There are almost no extreme grounds or extreme pops. This is what amazing bat control looks like.

How does this relate to Machado? After a round or two of dancing with Gemini, the tool I built can also help with this:

You could have guessed this before making this chart, but it’s still nice to see it in the photos. Machado is fighting the ground at the same pace, but his swing currently doesn’t allow him to do it in the air. We can throw in a third hitter to show what it looks like when you’re the opposite of Machado. Here’s Bryce Harper, whose uppercut is written into pitchers’ nightmares everywhere:

Harper is a new series in Philadelphia color. When he hits the ball on the ground, he rarely picks it up. In other words, it’s largely nonsense; when he bounces the ball, it is usually in the air. He consistently beats Machado at an increased rate in the air and also hits more aerial balls. He may not swing the ball as often as Arraez, but he swings much harder and lands it often enough. Perhaps it’s no surprise that he’s made it this far this year.

For another fun comparison, let’s look at Aaron Judge and Juan Soto:

The two establish an impeccable rapport in all areas. In almost everything that is in the air, they achieve a quadrature ratio of 80% or more, and they both swing a lot as well. It’s a killer combination. The referee even avoids groundings; there isn’t really a left tail to speak of. His largest group of launch angles is the most dangerous in baseball when you hit the ball hard. In other words, he swings hard, drives the ball frequently, and does so on home run trajectories. No wonder he’s hitting .703.

These two elite hitters do it in almost the same way. But it’s not the same for everyone. The Dodgers’ three stars have some differences:

Mookie Betts has turned into an extreme fly-hitter. Here’s graphic proof of why it works: The closest contact with the ball is at an angle of about 30 degrees of elevation, and it’s extremely common to hit the ball in the air. If he makes mistakes, he gets under the ball too much and clears the ball, which makes sense given his overall approach. Shohei Ohtani also hits the ball in the air most often. He doesn’t hit many players on the ground, although he hits them more often than Betts. It also does a great job with low-frequency drives – look at all those tall blue circles in the 10-20 degree range.

Then there’s Freddie Freeman. It hits everything at about the same pace. His most common launch angles are basically anything from 10-40 degrees. There are almost no changes in his lineage; both Betts and Ohtani have higher highs and lower lows. Freeman’s swing seems to be a chameleon; it simply changes to match the type of contact. In many ways he is a more robust but less precise Luis Arraez:

They both just rake, plain and simple. Of course, Arraez hits more often, but Freeman hits 7 mph faster. Arraez focuses more on the 5-15 degree range; Freeman uses his power by hitting more balls in the 25-35 degree range. But they both absolutely fuck everything up, whether it’s in the air or on the ground, and they both hit a ton of line drives. These guys are amazing.

We can do more. Want to see young American League shortstop dynamos? Look at Bobby Witt Jr. and Gunnar Henderson:

Witt has a promising form of contact, but not perfect. He’s like Freeman, just moved down a little and with more grounders. There are some warning signs, such as his relatively low boost rate when throwing the ball in the air. However, to be honest, I’m not sure how important the squared coefficient is in these small and chopped samples. For now I’m more interested in the form, and later I’ll have time to further test the meaning of the levels. For me, the most important thing is that Witt most often shoots the ball in the fly and drives linearly, but his most frequent duels take place on the ground. Make this adjustment and even more upside may emerge.

Henderson, on the other hand, feels like he was designed in a lab. Most often, he angles the ball at a launch angle, where hard contact is most beneficial. There aren’t enough popups to put any dots in there. All his grounders are morons. Sure, maybe he could concentrate even more batted balls around his best swing, but he does exactly what I want any hitter to do: he hits the ball evenly as he rises, and he does it at a faster batting rate.

Here’s the puzzle this data can solve: Why does Henderson have 20 homers and Witt has 11? Witt hits the ball harder, hits fewer grounders and even has faster barrel speed. However, Henderson’s swing is designed to get the ball in the air more often, so he is better at producing valuable launch angles and valuable exit velocities than his Kansas City counterpart.

I think this data will become much more interesting when we have access to many years of history. I’d like to know if Kyle Tucker’s swing shape has changed due to his slower ground ball speed and otherworldly efficiency. I would be interested in seeing how hitters who change their batting tendency change their batting tendency. I want to see if Nick Castellanos always approached the ball exactly like Bryce Harper, or if he had a different shape and the new one has to do with his downfall:

I don’t really have any idea what to do with all this in the long run. I think it’s more of a storytelling tool than something that can tell you who’s going to be great and who’s going to struggle. That said, I love these stories! Arraez is good in the way you’d expect. Betts maximizes his power with his swing. Harper’s chin shows up nicely in the data. How about a dig at Yandy Díaz’s land-friendly approach:

Yandy is devastating these earthing devices. You and I already knew this, but it’s nice that this data is verified by an eye test. That’s basically what it is to me; a way to turn some dry data into a story.

The tool I built is not available on FanGraphs for a number of reasons. It’s hilariously simple. This is defective. It was programmed by me, an imbecile coder, and not by our team of excellent programmers. It may not even be useful in the long run.

So no, you can’t just click on a single link and play around with it to your heart’s content. But I have two things to offer that I hope will make it up to you. First of all, it is an open source project. You can find the Python script that generates these charts, along with the source data, here. I’m certainly not sure this is the most efficient way to proceed – I was building from scratch without much experience in this area. If you have any improvements or anything else, let me know!

Second, I happen to have the code and the ability to post photos online. So if you’re interested in a specific comparison, ask me below in the comments. I’ll reach out to as many as I can over the next day or so, because I understand that “hey, just learn how to use this programming language quickly” isn’t exactly the way to guarantee widespread access.

So yes. It’s over! No real conclusions today, other than a) I think this tool is cool and b) here are some pictures of it. I hope you enjoy it and I hope there will be more bells and whistles soon.