Many readers will be familiar with the novella Flatland where life takes place in two dimensions. Now, what if I were to tell you that the same is true of every major league pitch. It’s just that they all exist on different planes, man. Stick with me through this initial explanation and you’ll see what I mean.

PITCHf/x relies on nine parameters to give a three-dimensional representation of the path of a pitch. However, it can be shown that the path of a pitch from this model is contained entirely in a unique two-dimensional plane, which is determined by the nine parameters of the model. The six parameters related to velocity and acceleration form a vector perpendicular to, and thus define the orientation of, the two-dimensional plane. The mathematics of this are provided near the end of the article.

Once this plane has been defined, three new coordinates can replace the traditional x-, y-, and z-coordinates. The first direction, called the binormal or b-direction, is in the direction of the aforementioned vector perpendicular to the plane. The other two vectors are free to be chosen, provided that both (i) lie in the plane and (ii) are not parallel. We will refer to these as the u– and w-directions (we intentionally skip using v since this variable is typically used for velocity). For the purposes of representing the pitch in the plane using these new coordinates, the u-direction will be analogous to the y-direction for the PITCHf/x data with the characteristics that it has zero vertical component and points back toward the pitcher. The w-direction plays the role of both x and z, and is chosen to have a positive z-component.

The way these directions are chosen allows a change from xyz-space to uwb-space to preserve both the distances and angles of xyz-space. It also maps the point (0,0,0) in xyz-space to (0,0,0) in uwb-space. Using this change, the entire flight path of a pitch can be displayed in two dimensions, making comparison of pitch trajectories easier. The planes themselves can be rendered in 3D to see how this restricts the possible pitch locations.

This article is intended to serve as a primer on how the planes of pitches are oriented and possible uses for these planes. The majority of this will be accomplished through specific examples, with a more rigorous analysis of some of these aspects in possible future articles.

Pitch-Dependent Basis and Visualization

To visualize the plane of a pitch, we will choose a slider from Chris Sale to Robinson Cano from Aug. 21, 2015 (all data in this study will be from the last complete season). First, the pitch itself:

Pictured below is the plane that the pitch lies in, from the viewpoint of the catcher, as well as the three new coordinate directions, which will be referred to as a “pitch-dependent basis” since the directions are unique to each pitch. While the plane shown is from the ground to five feet high and extends from 55 feet from home to the front of the plate, it actually extends infinitely in all its directions. Since the pitch is restricted to this plane, upon reaching home plate it can exist only along the solid yellow line that runs from top to bottom of the image. The pitch location at the front of the plate is shown, and does lie in the plane.

The vectors are shown in the center of the image to be easier to see, but the origin of this new coordinate system is still at the tip of home plate, the same as PITCHf/x. After obtaining these vectors that indicate our new directions, the path of the pitch can be represented entirely using only u and w.

The u and w values are still in feet, and are measured relative to the tip of home plate. Since the plane is perpendicular to the b-direction, a single value for b completely defines the location of the plane. You can think about the plane as a frame for the 2D curve of the pitch. Placing this 2D curve in the frame would recreate the trajectory of the pitch in three-space.

To have a non-basis dependent metric for representing the orientation of these planes, we will use a given plane’s angle from vertical. An angle of zero degrees corresponds to a vertical plane. Positive angles represent planes that slope up from left to right from the catcher’s perspective and negative angles represent sloping down from left to right. For Sale’s slider in question, this angle is 13.2 degrees. Another choice of metric could be, for example, the direction of the binormal vector.

Once we have the plane for a particular pitch, we can define characteristics of the pitch that exist within the plane, such as movement.

In-Plane Movement

Having created and defined the plane, pitch movement can be expressed as a single value in the w-direction. PITCHf/x’s expression of movement is based on the acceleration of the pitch in the x and z-directions, minus gravity.

Removing gravity, as is, from the acceleration would take the projected path of the pitch outside of the plane. So, to find the movement within the plane, we need only to remove the component of gravity in the w-direction. As with PITCHf/x, we will calculate movement from 40 ft in y. Note that here, since we are only removing a portion of gravity, the physical interpretation of this “in-plane movement” becomes harder to define. In essence, this movement is the in-plane deviation of a pitch from its actual path when only the component of gravity in the w-direction is included in the acceleration.

For the previously discussed pitch by Chris Sale, the gravity vector in uwb-space is <0,-31.325,7.343>. The movement in the w-direction, measured from 40 feet from home plate, is then -7.5 inches, where the negative sign means that the movement causes the pitch to move down within the plane. If we choose to find the movement with gravity included, assuming no acceleration for the pitch from 40 feet, this value lowers to -28.8 inches. The graph below shows the path of the pitch in each of these scenarios.

A Hardball Times Update by Rachael McDaniel Goodbye for now.

Now that we have a metric for comparing planes and a definition of in-plane movement, we can examine what these values show us. We will choose Madison Bumgarner’s 2015 pitches for our case study. He was chosen due to an interesting result that occurs with two of his pitch types. As a point of comparison, we will begin with plotting just the pfx_x versus pfx_z values, color-coded by pitch, and will compare their distribution to the angle from vertical for the planes versus the in-plane movement.

The clustering in both plots is consistent, in that they group by pitch type. Based on the angle, the two types of fastballs and the change-up have planes that slope down from left to right while the slider and curveball slope up. Also, the two types of fastballs are spread over a much wider range of angles than the other types of pitches. The in-plane movement of the two fastballs and the slider is upward in the plane, the change-up has close to zero movement, and the curve has downward movement in the plane.

If, for example, Bumgarner wanted to throw consecutive pitches that would have similar planes, presumably appearing initially similar to a batter, but were of different pitch types, the fastballs and change-up would pair well together as would the slider and curve. Also of note here is that some pitches have a large amount of PITCHf/x movement but a small amount of in-plane movement. For example, Bumgarner’s change-up has approximately five to 10 inches of horizontal movement and zero to 10 inches of vertical movement. However, its in-plane movement is centered around 0.

We can also examine in-plane movement in relation to pitch speed. Below is a plot of Bumgarner’s speed versus in-plane movement.

The clustering of similarly classified pitches remains the same, but overlap appears between the change-up and slider, indicating similar speeds and similar amounts of in-plane movement. This occurs even if gravity is included in the movement calculation:

This means that, within their planes, Bumgarner’s change-up and slider are similar pitches. We can demonstrate this visually as well. We will examine a change-up and slider from Bumgarner’s May 9, 2015 start against the Miami Marlins. The first pitch is a change-up to Martin Prado. The actual pitch is shown first, followed by the pitch in-plane with a yellow circle tracking the projected location of the pitch with the remaining movement taken out.

This change-up sits in a plane at an angle of -22.3 degrees and has 2.4 inches of in-plane movement. The slider selected for comparison to the change-up has a similar vertical position (1.027 feet at the front of home plate for the change-up compared to 1.221 feet for the slider). This chosen slider is a second inning offering to J.T. Realmuto.

The plane of the slider is at an angle of 7.5 degrees and has 2.1 inches of in-plane movement. If the two paths of the pitches are overlaid, they align reasonably well.

So for Bumgarner’s change-up and slider, the pitches have similar 2D flight paths but exist in planes with different orientations. This provides an interesting way of viewing certain types of pitches as being similar in path, speed, and in-plane movement but approaching the batter at different angles.

Angle and in-Plane Movement Results for Pitchers in 2015

To get an idea of where different pitches occur in terms of angle and in-plane movement, we will plot the mean of the angle versus the mean of the in-plane movement for the top 25 pitchers based on number of pitches thrown for each type. Here, we restrict ourselves to the seven pitches that at least 25 pitchers, both left-handed and right-handed, threw in 2015: change-up, curveball, cut fastball, four-seam fastball, two-seam fastball, sinker and slider.

For both left- and right-handed pitchers, curveballs, cut fastballs, and sliders have mean angles in the neighborhoods of +/- 10 degrees, with the cut fastballs from lefties dipping down toward 0 degrees. The change-up, four-seam fastball, two-seam fastball, and sinker sit over a wider range of values with mean angles predominantly between +/- 20 and +/- 40 degrees. For in-plane movement, the cut fastball and four-seam fastball tend to move up in the plane; the change-up, two-seam fastball, sinker, and slider are clustered near zero movement; and only the curveball largely has downward movement in the plane.

The mean and standard deviation of the plane angle and movement for the top 50 pitchers for each of these seven types of pitches, from bpo left- and right-handed pitchers, are in links to .csv files at the end of the article.

Next, we will look at a case of different pitches with the similar planes.

Similarly-Angled Planes for Different Pitches

For the case of two different types of pitches with the similar planes, we will use Max Scherzer’s pitches from 2015. Below is a plot of the in-plane movement versus the angle of the plane of the pitches.

We will focus on the curveball and slider, which are both around -10 degrees for their planes. In a June 14, 2015 at-bat by Jason Rogers, Scherzer threw a slider and curve on consecutive pitches that we will illustrate using their planes.

First up is the slider:

The angle of the plane for the slider is -7.6 degrees with -1.5 inches of in-plane movement. The subsequent curveball has a plane at -8.1 degrees with -2 inches of movement.

In both cases, the pitches are in similarly oriented planes with one plane rotated to put the pitch on the opposite side of the strike zone. Note that the back line of the plane, near the mound, in each case appears nearly identical. In uw-space, both pitches can be plotted together in 2D.

Since their planes are very close in terms of angle, this conversion to uw-space allows for an easy visual comparison of the trajectories of the pitches without having to sacrifice a dimension, plotting y vs. x or y vs. z, or render both in 3D. In uw-space, the slider starts higher, peaks around 40 feet, then finishes about two feet lower than the peak at the front of the plate. The curve starts lower, and is continually decreasing in the w-direction.

In-Plane Movement Versus PITCHf/x Movement

In-plane movement and PITCHf/x movement give different measures of how acceleration affects the flight path of a pitch. In this example, we will consider two four-seam fastballs from LHP: one from Clayton Kershaw and one from Justin Nicolino. Kershaw was chosen since, out of the 50 left-handers who threw the most four-seamers in 2015, his produced the most in-plane movement (with mean 10.47 inches). Nicolino, on the other hand, had a lot of PITCHf/x movement but very little in-plane movement (with mean 2.04 inches).

The pitch from Kershaw is from an Aug. 23, 2015 game against Marwin Gonzalez of the Astros. Both the actual pitch and a simulation of the pitch with its plane are shown. In the simulation, the yellow circle represents the projected location of the pitch with its remaining in-plane movement removed and the red circle represents the projected location with the remaining PITCHf/x movement removed. The pitch has PITCHf/x movement pfx_x = 2.87 and pfx_z = 12.27 inches, with in-plane movement 10.81 inches.

Both types of movement are in upward directions, with the in-plane projection dragging the projected pitch through the strike zone. The projection with the remaining PITCHf/x movement removed starts the pitch outside the zone and sweeps it across its upper-left corner.

Nicolino’s four-seamer is to Brandon Phillips from June 20, 2015. The PITCHf/x movement for the pitch is pfx_x = 8.29 and pfx_z = 8.14 inches, with 2.46 inches of in-plane movement.

While the in-plane movement of the pitch moves its projection only slightly up the plane, the PITCHf/x movement brings the projection across the strike zone.

Observing the two simulations, it would seem that having PITCHf/x movement in the direction of the plane translates to having a similar amount of in-plane movement and having PITCHf/x movement perpendicular to the plane suppresses in-plane movement.

As a means of projection, based on removing PITCHf/x or in-plane movement, it would be of interest to analyze which choice may provide more insight into how batters determine whether a pitch appears to be a strike or a ball. If the batter can pick up the plane of the pitch, then in-plane movement may be a useful characteristic to study for pitches.

Discussion and Avenues for Future Study

The intent of this article was to present the explicit calculation of the planes that the PITCHf/x data live in, how these planes appear for actual pitches, and subsequent information that can be drawn from these planes, such as in-plane movement. Much of this would need topic-specific analysis to understand which metrics are useful, which falls beyond the scope of this introductory piece.

In the future, it would be interesting to examine if significant in-plane movement correlates with swings and misses, and how it compares to traditional PITCHf/x movement in relation to affecting batters’ ability to judge pitch location.

For pitch sequencing, one could analyze the effect on batters of different pitch types thrown in similar planes on consecutive pitches, in the same vein as pitch tunneling. Based on the fact that the PITCHf/x data restricts pitches to planes, to throw two pitches along similar paths early in their flight, their planes would have to be close (note that we can also find a second angle for the plane that would indicate the direction that the plane was oriented, relative to pointing straight ahead).

One option explored, but not presented here, was how the way a plane intersects the strike zone relates to swings or pitches taken. Two simple ways of measuring this would be the length of the line that the plane makes in the strike zone, or the ratio of the area that the plane splits the strike zone into. No intersection would be a ratio of 0 and the strike zone split in half would be a ratio of 1. Another use, for the 2D visualization, would be to try to analyze late break of pitches. Since the entire path of the pitch can be viewed in two dimensions, it would make it easier to visually or analytically detect late break, if it exists for a pitch as a physical quantity.

What follow are the mathematics justifying what is presented above. Feel free to wade in, even if you don’t have a mathematics background, but if this is the moment you choose to step away, we won’t be offended.

Derivation of Formulas

Most of the mathematics here lies in the realm of multivariable calculus and linear algebra, but the concepts should be accessible even without such a background. After that, tables are given for both the angles and in-plane movement for 50 left-handed and right-handed pitchers for each type of pitch. There’s an example table for each, with the remaining tables available in links. Finally, there is code for the visualization of the planes as a playable movie in a PDF, along with R code of reproducing most of the plots and data given in the article.

For curves in three dimensions given by (x(t),y(t),z(t)), where t is a parameter, an osculating plane can be found for the curve at a given point (or for a specific value of t). This is the plane that is closest to containing the curve at that point. The torsion of a curve at a point is a measure of the curve’s tendency to twist out of the osculating plane. If the torsion is equal to zero, the curve never exits its osculating plane and, being confined to a 2D plane, is referred to as a planar curve. For the PITCHf/x data, it is easy to show that the torsion for any pitch is zero. This is since the calculation of the torsion relies on the derivative of the acceleration, a constant vector, which produces the zero vector. The below equation for the torsion of a space curve demonstrates this:

In this equation, a is the constant acceleration vector, v(t) is the velocity vector at the given point, “x” denotes a cross product of two vectors, “.” indicates a dot product of two vectors, and the vertical bars mean to find the magnitude or length of the vector. Since a is constant, its derivative is zero, so the torsion is zero. Therefore, the osculating plane is the same for all locations of the pitch and the pitch cannot exit this plane.

To find the equation of the plane, we need two pieces of information: a point in the plane (which could be (x0,y0,z0) from the PITCHf/x data) and a vector perpendicular to the plane. Luckily, this vector can be determined from the velocity and acceleration of the curve at a given point. Since the osculating plane is the same at all points, we can use the velocity at 50 feet from PITCHf/x and the constant acceleration:

This forms the “binormal” vector, labeled B. This vector can be written in component form as B = <Bx,By,Bz> and, combined with the point (x0,y0,z0), the plane is defined as:

For the above equation, the position of the pitch at any given time, (x(t),y(t),z(t)), must satisfy the equation when substituted in for (x,y,z).

We now need to define two vectors that exist within this plane to complete a new basis (set of directions that can form all points in 3D) for the given pitch. The first new direction will be taken to function as y does in PITCHf/x. To do so, we take the component of this vector in the vertical direction to be 0. Then any vector that has a positive y-component and is perpendicular to B will work. An easy choice, denoted U, is given below.

The “sign” function used produces a -1 if its argument is negative, +1 if its argument is positive, and 0 if its argument is 0. Also, we are making each vector of unit length to form an “orthonormal basis” which has various nice properties that will be of use later.

Finally, we need one more vector to fill the role of both x and z. This vector needs to be perpendicular to both B and U. The cross product of two vectors will accomplish this task, along with two adjustments. First, we will make this new vector also unit length and ensure that the z-component is positive so that the vector points upward, provided the plane is not horizontal. This vector will be labeled W.

These three vectors, U, W, and B, now form an orthonormal basis in three dimensions. Using these vectors to go from xyz-space to uwb-space will preserve both lengths of vectors and angles between vectors. So in doing this conversion, the data is not distorted in any way. We can think of vectors in xyz-space being a linear combination of the vectors X = <1,0,0>, Y = <0,1,0>, Z = <0,0,1>. For example, the vector <x(t),y(t),z(t)> can be written as x(t) X + y(t) Y + z(t) Z. Our goal is to be able to write <x(t),y(t),z(t)> as u(t) U + w(t) W + b(t) B, where (u(t),w(t),b(t)) are the coordinates of the curve in uwb-space.

This can be performed using an orthogonal transformation, which maps points in xyz-space to uwb-space. To find the values of (u(t),w(t),b(t)), we set up the following system of equations:

Everything here is known except the three values in question. To solve this, we need to isolate u(t),w(t), and b(t). This is accomplished by first writing the system in matrix form.

Next, we need to apply the matrix’s inverse. However, since the matrix is orthogonal, where the columns are perpendicular vectors and of length one, its inverse is its transpose (the matrix formed by switching the rows and columns). Applying the inverse provides a means to find u(t),w(t), and b(t).

Using matrix multiplication, the value u(t) is equal to x(t) Ux + y(t) Uy + z(t) Uz. An analogous result holds for w(t) and b(t). This can also be applied to get velocities and accelerations in uwb-space. For example, au = ax Ux + ay Uy + az Uz. With this transformation, the equations for the position of the pitch become:

The component in the binormal direction is a constant, which defines the plane, and only two components change over the flight path of the pitch: u and w. The pitch can then be plotted over its original time interval.

Tables for Angles and In-Plane Movement

For the first set of tables, the angle of the plane by pitch type, the mean and standard deviation of the angle are given, along with the number of that type of pitch thrown. An example table is given for the top 25 pitchers in four-seam fastballs thrown by lefties in 2015. All remaining tables are top 50 and are given in the below links to .csv files on a Google Drive.

ANGLE FOR FOUR-SEAM FASTBALLS FROM LHP (2015) # First Last Mean S.D. Number 1 Clayton Kershaw -3.623 13.118 1831 2 Jose Quintana -18.604 12.088 1721 3 J.A. Happ -30.287 10.031 1620 4 Jon Lester -23.162 9.823 1483 5 Danny Duffy -27.095 14.933 1462 6 Robbie Ray -40.946 7.568 1376 7 Madison Bumgarner -20.172 7.415 1359 8 Eduardo Rodriguez -31.631 8.402 1337 9 Wei-Yin Chen -37.019 8.515 1315 10 Tommy Milone -27.415 10.761 1188 11 David Price -37.924 10.187 1091 12 Wade Miley -27.205 11.786 1087 13 Gio Gonzalez -34.398 7.395 996 14 Cole Hamels -26.574 11.947 992 15 John Danks -35.132 8.959 991 16 Kevin Siegrist -33.525 10.034 950 17 Aroldis Chapman -35.856 16.654 874 18 Drew Pomeranz -26.26 11.175 850 19 Jorge De La Rosa -29.849 7.939 785 20 Antonio Bastardo -39.473 8.937 783 21 Mike Montgomery -29.207 8.817 778 22 Travis Wood -17.353 10.035 766 23 Dallas Keuchel -26.528 11.359 762 24 Mark Buehrle -4.795 7.347 739 25 James Paxton -28.626 11.309 736

Angle for Changeups from LHP (2015)

Angle for Changeups from RHP (2015)

Angle for Curveballs from LHP (2015)

Angle for Curveballs from RHP (2015)

Angle for Cut Fastballs from LHP (2015)

Angle for Cut Fastballs from RHP (2015)

Angle for Four-Seam Fastballs from LHP (2015)

Angle for Four-Seam Fastballs from RHP (2015)

Angle for Two-Seam Fastballs from LHP (2015)

Angle for Two-Seam Fastballs from RHP (2015)

Angle for Sinkers from LHP (2015)

Angle for Sinkers from RHP (2015)

Angle for Sliders from LHP (2015)

Angle for Sliders from RHP (2015)

The movement tables contain several measures. First, the mean and standard deviation of in-plane movement (IPM in the files) is given. This is followed by the absolute value of the in-plane movement (AIPM). This second value is available to compare to the PITCHf/x movement listed later in the table. Third is the in-plane movement plus gravity (IPMG). Finally, the PITCHf/x movement (MVT) is given as a single value as the square root of pfx_x squared plus pfx_z squared. As before, a 25-pitcher sample is given here with a full 50 pitchers for each pitch type and handedness in the .csv files.

MOVEMENT FOR FOUR-SEAM FASTBALLS FROM LHP (2015) In-Plane Abs. In-Plane In-Plane + Gravity PITCHf/x # First Last Mean S.D. Mean S.D. Mean S.D. Mean S.D. Number 1 Clayton Kershaw 10.466 1.669 10.466 1.669 -6.103 1.658 11.201 1.648 1831 2 Jose Quintana 8.017 2.23 8.017 2.23 -8.611 1.819 10.809 1.827 1721 3 J.A. Happ 5.128 2.195 5.141 2.163 -9.925 1.975 11.322 2.037 1620 4 Jon Lester 6.676 1.681 6.676 1.681 -9.27 1.646 10.431 1.732 1483 5 Danny Duffy 8.439 2.766 8.44 2.762 -6.195 1.931 12.481 1.513 1462 6 Robbie Ray 2.39 2.191 2.677 1.83 -10.386 1.742 12.604 1.547 1376 7 Madison Bumgarner 7.153 1.353 7.153 1.353 -9.189 1.302 10.057 1.413 1359 8 Eduardo Rodriguez 4.695 1.835 4.699 1.824 -9.429 1.32 10.768 1.419 1337 9 Wei-Yin Chen 4.591 1.778 4.596 1.767 -9.386 1.23 12.404 1.58 1315 10 Tommy Milone 7.758 2.142 7.758 2.142 -9.235 1.906 12.777 2.032 1188 11 David Price 4.74 1.997 4.754 1.963 -8.324 1.388 12.345 1.71 1091 12 Wade Miley 6.8 2.313 6.8 2.313 -8.888 1.562 11.683 1.749 1087 13 Gio Gonzalez 3.709 2.015 3.728 1.98 -10.656 1.596 11.604 1.557 996 14 Cole Hamels 6.7 1.948 6.701 1.947 -8.705 2.013 11.215 2.283 992 15 John Danks 6.229 1.908 6.229 1.908 -8.941 1.68 13.178 1.936 991 16 Kevin Siegrist 5.553 2.374 5.567 2.341 -8.315 1.546 11.889 1.467 950 17 Aroldis Chapman 5.97 2.922 5.993 2.875 -5.734 2.274 11.593 1.576 874 18 Drew Pomeranz 7.139 2.224 7.149 2.191 -8.306 1.515 11.564 1.554 850 19 Jorge De La Rosa 2.974 2.186 3.201 1.836 -12.311 1.862 10.529 1.906 785 20 Antonio Bastardo 5.782 2.355 5.794 2.324 -7.48 1.464 13.309 1.212 783 21 Mike Montgomery 2.334 2.448 2.739 1.984 -13.396 2.108 10.689 2.163 778 22 Travis Wood 9.402 1.511 9.402 1.511 -7.69 1.721 11.383 1.638 766 23 Dallas Keuchel 3.928 2.856 3.987 2.772 -12.264 2.229 10.259 2.211 762 24 Mark Buehrle 6.579 1.574 6.579 1.574 -14.221 1.781 7.33 1.836 739 25 James Paxton 5.601 2.438 5.62 2.395 -8.988 2.242 10.896 2.075 736

Movement for Changeups from LHP (2015)

Movement for Changeups from RHP (2015)

Movement for Curveballs from LHP (2015)

Movement for Curveballs from RHP (2015)

Movement for Cut Fastballs from LHP (2015)

Movement for Cut Fastballs from RHP (2015)

Movement for Four-Seam Fastballs from LHP (2015)

Movement for Four-Seam Fastballs from RHP (2015)

Movement for Two-Seam Fastballs from LHP (2015)

Movement for Two-Seam Fastballs from RHP (2015)

Movement for Sinkers from LHP (2015)

Movement for Sinkers from RHP (2015)

Movement for Sliders from LHP (2015)

Movement for Sliders from RHP (2015)

Code in R and LaTeX

Below are some of the functions and code used in the above analysis, written in R, in addition to the visualization code, in LaTeX. Any other code related to this work is available upon request.

LaTeX Code for Plane Visualization in PDF Form

Functions in R for Finding the Basis, Movement, Etc.

R Code for Plotting Angle/Movement for a Specific Pitcher

R Code for Plotting the Pitch in UW-Space, Along with a Display of Parameters