Using Gifs to Visualize Curveballs on the Scouting Scale

After reading Kiley McDaniel’s articles on explaining the scouting scale, I thought that I would take a different approach in trying to explain it–namely the approach of gifs.  Although the scale is normally reserved for players who haven’t lost their rookie status in the majors, perhaps a visualization can better illustrate what “major league average,” “plus,” or “below average” looks like.

To show the differences between curveballs in different positions along the scouting scale, major league curveballs must first be graded.  To do this, I pulled up Baseball Prospectus’ pitch f/x leaderboard and set it to filter for pitchers who threw at least 100 curveballs in 2014.  The way in which pitch movement is measured and the fact that lefties’ curveballs’ horizontal movement appeared to be measured lower than righties forced my methodology.

I split up righties and lefties into separate groups for analysis.  Pitch movement was recorded based on the inches a pitch broke more than the the pitch with the least break.  Total movement was recorded as the square root of the combined horizontal and vertical movement squares (C2 = A2 + B2).  Z Scores were recorded for each curveball’s velocity and movement, and then were added (with movement receiving a 1.5 times greater weight) to form a grade.  The grades were then transferred into Z Scores with a median of 50 and each standard deviation being 10.  Finally, the righties and lefties were combined to make a final scouting scale.

Name / Throws / Total Movement Z Score / Velocity Z Score / Scouting Grade

Garrett Richards R 2.081 0.289 73.4
Drew Pomeranz L 0.882 1.398 69.0
Tyler Skaggs L 1.757 0.047 68.8
Blaine Hardy L 1.356 0.410 67.1
Gio Gonzalez L 1.406 0.317 66.9
Alex Cobb R 0.907 0.948 66.0
Roenis Elias L 0.949 0.771 65.3
Sonny Gray R 0.589 1.187 64.4
Jarred Cosart R 1.125 0.289 63.8
Felix Hernandez R 0.812 0.712 63.5
Jake Arrieta R 0.972 0.428 63.2
Charlie Morton R 1.191 0.066 63.0
Carlos Torres R 0.973 0.350 62.7
Craig Kimbrel R -0.474 2.430 62.1
Sean Marshall L 1.795 -0.970 62.0
Yoervis Medina R -0.471 2.330 61.5
Joe Kelly R 0.852 0.341 61.4
Mark Melancon R 0.312 1.116 61.2
Stephen Strasburg R 0.633 0.612 61.0
Justin Grimm R 0.404 0.915 60.8
Robbie Erlin L 1.711 -1.022 60.7
Jamey Wright R 0.958 0.057 60.6
Adam Wainwright R 1.731 -1.106 60.6
Wandy Rodriguez L 1.401 -0.639 60.1
Kevin Jepsen R -0.315 1.861 59.9
Jeremy Hellickson R 1.367 -0.664 59.9
Clay Buchholz R 1.007 -0.166 59.6
Scott Atchison R 0.429 0.683 59.5
Will Harris R 0.538 0.518 59.5
Michael Bolsinger R 0.524 0.521 59.3
John Axford R 0.857 0.015 59.3
David Robertson R -0.245 1.619 59.0
Jeremy Affeldt L 1.197 -0.497 59.0
Ian Kennedy R 0.943 -0.186 58.8
Yu Darvish R 0.941 -0.182 58.8
Eric Surkamp L 0.624 0.320 58.7
Nick Masset R 0.680 0.182 58.6
Tom Koehler R 0.551 0.360 58.5
Marcus Stroman R -0.189 1.455 58.4
Zack Wheeler R 0.604 0.263 58.4
Jose Fernandez R -0.255 1.532 58.3
Scott Downs L 1.405 -1.064 57.2
Edinson Volquez R 0.240 0.609 57.1
Felix Doubront L 1.093 -0.629 56.9
Juan Gutierrez R 0.110 0.744 56.7
Jesse Chavez R 1.076 -0.731 56.5
Jeremy Jeffress R 0.264 0.476 56.4
Danny Duffy L 0.446 0.272 56.4
Cody Allen R -1.180 2.630 56.4
Mike Leake R 0.210 0.515 56.2
Dellin Betances R -0.552 1.635 56.0
Trevor Bauer R 0.416 0.147 55.8
Jose Veras R 0.924 -0.638 55.6
Adam Warren R -0.220 1.022 55.2
Clayton Kershaw L 1.119 -0.906 55.2
Chris Tillman R 0.987 -0.828 55.0
Cole Hamels L 0.142 0.517 54.9
Miles Mikolas R 1.158 -1.093 54.9
Jeff Locke L 0.268 0.317 54.9
Gerrit Cole R -0.845 1.884 54.7
Josh Fields R 0.233 0.257 54.7
Nick Tepesch R 0.370 0.018 54.4
Brandon Workman R 0.743 -0.544 54.4
Carlos Carrasco R -0.275 0.954 54.2
Cesar Ramos L 1.941 -2.290 54.2
Tom Wilhelmsen R 0.309 0.034 53.9
Jenrry Mejia R 0.117 0.308 53.9
Trevor Cahill R 0.202 0.153 53.7
Odrisamer Despaigne R 0.813 -0.770 53.6
Collin McHugh R 1.350 -1.635 53.2
Jesse Hahn R 1.150 -1.345 53.2
Phil Hughes R 0.573 -0.502 53.0
Samuel Deduno R -0.389 0.906 52.8
Brett Cecil L -1.373 2.483 52.8
Ian Krol L -0.094 0.555 52.7
Wade Davis R -1.260 2.184 52.6
Jordan Zimmermann R -0.034 0.308 52.3
Andre Rienzo R 0.052 0.170 52.3
Junichi Tazawa R 0.731 -0.857 52.2
Jason Hammel R 0.477 -0.512 52.0
Wesley Wright L -0.302 0.764 52.0
Mike Fiers R 1.376 -1.890 51.8
Nathan Eovaldi R 0.542 -0.644 51.8
Alex Wood L -0.385 0.851 51.7
Jake Buchanan R 0.570 -0.709 51.6
Dillon Gee R 0.926 -1.261 51.5
Trevor May R 0.298 -0.328 51.4
David Buchanan R 0.247 -0.263 51.3
Hyun-jin Ryu L 1.074 -1.395 51.3
Rick Porcello R 0.171 -0.189 51.1
Yordano Ventura R -1.045 1.603 50.9
Anthony Ranaudo R 0.136 -0.195 50.7
Aaron Loup L -0.110 0.282 50.6
Brad Hand L -0.491 0.851 50.6
Brandon McCarthy R -0.757 1.116 50.5
Will Smith L -0.282 0.526 50.5
Vidal Nuno L 0.094 -0.043 50.5
Justin Verlander R -0.301 0.415 50.4
Tommy Hunter R -1.053 1.539 50.4
Santiago Casilla R -0.726 1.038 50.3
Brad Peacock R 0.257 -0.447 50.2
Madison Bumgarner L 0.013 0.043 50.2
Fernando Abad L -0.223 0.397 50.2
C.J. Wilson L 0.077 -0.066 50.1
Francisco Rodriguez R 0.334 -0.586 50.1
A.J. Burnett R -0.847 1.167 49.9
Erik Bedard L 0.572 -0.842 49.9
Tanner Roark R 0.889 -1.455 49.8
Kevin Quackenbush R 0.264 -0.531 49.7
Casey Janssen R 0.767 -1.287 49.7
Yovani Gallardo R -0.366 0.376 49.5
Matt Cain R -0.007 -0.173 49.4
Cory Rasmus R 0.332 -0.683 49.4
J.P. Howell L -0.488 0.652 49.2
Shelby Miller R 0.046 -0.328 48.9
Joba Chamberlain R -0.417 0.331 48.7
Mike Minor L -1.028 1.373 48.6
Lance Lynn R -0.505 0.441 48.5
Josh Beckett R 0.835 -1.587 48.4
Daisuke Matsuzaka R 0.510 -1.109 48.3
Chase Anderson R -0.043 -0.318 48.1
Jorge De La Rosa L 0.397 -0.845 48.0
Danny Farquhar R 0.214 -0.725 47.9
Nick Martinez R 0.107 -0.599 47.7
Jerry Blevins L 0.348 -0.825 47.6
Matt Garza R 0.444 -1.141 47.5
Franklin Morales L 0.340 -0.874 47.2
Craig Stammen R -0.732 0.563 47.1
Javy Guerra R -0.179 -0.266 47.1
Scott Feldman R 0.326 -1.041 46.9
Anthony Varvaro R -0.810 0.638 46.8
Hector Noesi R -0.910 0.741 46.5
Miguel Gonzalez R -0.144 -0.428 46.3
John Lackey R -0.520 0.128 46.3
Kevin Correia R -0.427 -0.015 46.3
Kyle Kendrick R -0.313 -0.186 46.3
Tyler Thornburg R -0.364 -0.118 46.2
Colby Lewis R -0.216 -0.344 46.2
Donn Roach R 0.008 -0.683 46.2
Tim Lincecum R 0.226 -1.022 46.1
Chris Capuano L -0.013 -0.507 46.0
Josh Tomlin R -0.062 -0.618 45.9
J.A. Happ L -0.568 0.275 45.7
James Paxton L -1.519 1.643 45.3
Vance Worley R -0.360 -0.289 45.1
J.J. Hoover R 0.093 -0.973 45.1
Tim Hudson R 0.007 -0.854 45.0
Wei-Yin Chen L 0.065 -0.809 44.7
Marco Estrada R -0.419 -0.286 44.5
Kyle Lohse R 0.091 -1.109 44.1
Vic Black R -1.482 1.248 44.1
Gavin Floyd R -1.285 0.951 44.1
Bruce Chen L 0.405 -1.421 44.0
Phil Coke L -1.232 1.003 43.8
Jon Lester L -0.249 -0.478 43.7
Paul Maholm L 0.340 -1.492 42.8
Jose Quintana L -1.420 1.134 42.7
David Phelps R -1.211 0.622 42.7
Zach Duke L -0.491 -0.288 42.5
Brett Oberholtzer L -1.197 0.751 42.4
Homer Bailey R -1.197 0.538 42.2
Jon Niese L -0.078 -0.954 42.2
Alfredo Simon R -0.751 -0.179 41.9
Jim Johnson R -1.275 0.605 41.9
Zack Greinke R 0.308 -1.903 41.0
Scott Carroll R -0.685 -0.431 40.9
Jason Vargas L -0.469 -0.562 40.8
Travis Wood L 0.088 -1.443 40.5
Heath Bell R -1.696 0.948 40.0
David Price L -1.564 0.954 39.9
Doug Fister R 0.071 -1.726 39.8
Jordan Lyles R -1.731 0.961 39.7
Michael Wacha R -0.378 -1.112 39.4
Masahiro Tanaka R -0.204 -1.413 39.2
Joel Peralta R -1.008 -0.208 39.2
James Shields R -1.514 0.518 38.9
Jake Odorizzi R 0.579 -2.759 38.0
Andrew Heaney L -1.515 0.568 37.7
Max Scherzer R -1.307 -0.163 36.5
Anibal Sanchez R -1.676 0.357 36.2
Julio Teheran R -0.450 -1.539 35.9
Scott Kazmir L -1.244 -0.124 35.7
Yusmeiro Petit R -1.253 -0.402 35.4
Mat Latos R -1.151 -0.586 35.2
Jacob deGrom R -1.879 0.473 35.0
Tommy Milone L -0.975 -0.626 35.0
Joe Nathan R -2.412 1.271 35.0
Edwin Jackson R -1.821 0.370 34.9
Matt Shoemaker R -1.126 -0.802 34.0
Drew Smyly L -1.762 0.330 33.4
Dan Haren R -1.545 -0.292 33.2
Hector Santiago L -1.609 0.069 33.2
Grant Balfour R -2.631 1.274 32.8
Ryan Vogelsong R -1.631 -0.405 31.6
Mark Buehrle L -0.593 -1.691 31.5
Erasmo Ramirez R -2.280 0.528 31.3
Jeremy Guthrie R -1.384 -0.854 31.1
Jacob Turner R -2.033 0.102 31.0
Hiroki Kuroda R -1.637 -0.528 30.7
Johnny Cueto R -2.591 0.880 30.6
Jake Peavy R -2.414 0.573 30.3
Josh Collmenter R -0.839 -1.884 29.7
Sam LeCure R -1.215 -1.461 28.7
Bronson Arroyo R -1.320 -1.416 28.0
Aaron Harang R -1.461 -1.319 27.2
John Danks L -1.548 -1.051 25.9
Eric Stults L -0.448 -2.837 24.9
Fernando Salas R -3.656 1.613 24.8
Carlos Villanueva R -2.102 -0.718 24.8
Jered Weaver R -0.725 -2.840 24.4

For our first gifs, we’ll look at two of the top curveballs on the by-the-numbers scouting scale.  At an slightly above average velocity of 79.7 mph with the highest amount of break above than the baseline (sorry, Fernando Salas), Garrett Richards’ curveball is a sight to behold and grades out as a 73:

Next, we’ll look at Tyler Skagg’s curveball, which, features great horizontal and vertical movement while maintaining average velocity.  It grades out as a 69:

With the plus-plus-type (70) curveballs out of the way, we’ll take a look at some plus (60) curveballs.  Wandy Rodriguez fits this category.  His curveball has slightly less, but similar, movement as Skagg’s but it’s lesser velocity makes it a lesser-quality pitch.  Notice how it has defined break, but it appears a bit loopy due to its velocity:

With Kevin Jepsen, we see a curveball that is graded similarly but looks much different than Wandy’s.  Although its break looks sharp because of its velocity, the total movement is slightly below average.  This pitch may actually be a slider, but Jepsen’s breaking pitches tend to run together so consider it a representative picture of his curveball.

Next, we’ll look at an average (50 on the scale) curveball.  Erik Bedard gets slightly above average break, but with below average velocity.  It has solid two-plane break, but it doesn’t look very sharp:

Next, we’ll look at a below average (40 on the scale) curveball.  Jordan Lyles has good velocity on his curveball, averaging 81.75 mph, but he also averages nearly two standard deviations less break than an average curveball in this sample.  The following is a tough angle to see the break, but it lacks the sharp break of a better curveball.

Finally, we’ll look at Jered Weaver’s well below average (24 on the by-the-numbers scale!) curveball.  His curveball was the slowest in the sample and also featured below average break (much of the perceived break is from its low velocity).  It’s still an effective pitch for him, but it’s probably a result of his height and delivery combination than his curveball.  With just about any other pitcher, it would likely be ineffective.

 

We hoped you liked reading Using Gifs to Visualize Curveballs on the Scouting Scale by Ben414!

Please support FanGraphs by becoming a member. We publish thousands of articles a year, host multiple podcasts, and have an ever growing database of baseball stats.

FanGraphs does not have a paywall. With your membership, we can continue to offer the content you've come to rely on and add to our unique baseball coverage.

Support FanGraphs




newest oldest most voted
Josh
Guest
Josh

I’m glad you made this, people have been bugging Kiley for this. More breaking pitches coming?

cturner
Member
cturner

How did you come up with the grade after you added the z scores for velo and movement? Tried to do this for other pitches, but can’t figure out how you formulated the grade.