Being a long-time Phillies fan, obviously I am excited about the recent signing of Bryce Harper to a long-term contract. One would think that Harper would add a big bat to the Phillies lineup — with the addition of the new players including Harper, I would think the Phillies will score more runs in 2018. I don’t typically post on a Saturday, but it seemed appropriate since Harper is taking his first at-bat as a Phillie in today’s game against Toronto.
From a statistical perspective, the interesting question is a prediction one. Specifically, how will Harper perform as a Phillies hitter in the hitter-friendly Citizens Bank Park? Fivethirtyeight recently had an article “Is It a Clown Question To Ask Why Bryce Harper’s Stats are Down?” where they summarize Harper’s defensive and offense performances. They made several interesting comments about Harper’s hitting in this article:
- Harper’s ability to make contact has been in decline.
- Harper generally has a weakness against fastballs up and away in the zone.
- But Harper currently hits for a good average and high slugging percentage.
- He has elite plate discipline.
- Unfortunately, although some batting traits such as plate discipline age well, batting power generally does not age well.
I recently have been adding some filled contour plot functions to my CalledStrike package. (I should give a special thanks to Elio Campitelli who made improvements to the ggplot filled contour routines in the metR package.) To confirm and perhaps add to the Fivethirtyeight article, I thought I’d use these plots to explore Bryce Harper’s hitting performance for the 2015 through 2018 seasons.
To Swing or Not to Swing?
Let’s focus first on Harper’s plate discipline. We fit a generalized additive model to predict the probability of a swing on a pitch given a particular location. The following graph is a filled contour graph of the fitted probability of swing where the contour lines are drawn at 0.25, 0.50, and 0.75. Harper is noted for his discipline in that it is rare for him to swing on a pitch outside of the zone. Comparing the 2015 Harper with the 2018 Harper, I see some maturation of his discipline — he is less apt to swing at a ball high in the zone
Making Contact on a Swing
Okay, suppose Harper swings on a pitch — what is the probability that he swings and misses? We now only look at the swung pitches and model the probability that he misses on the swing. Here we show a filled contour plot where the contours are at the probability values .1, .15, .20, .25, .3, .35, .4. The blue area is the “sweet spot” in the sense that the probability of missing is under 10%. As a Phillies fan, this graph concerns me. For example, in 2017, Harper’s miss rate appears to be under 20% for much of the zone. However, in 2018, this region of “low miss” is moving towards the inside of the plate and it is more likely that he misses a pitch on the outside, especially the high outside pitches in the zone.
Look at Fangraphs Stats
The above statements about plate discipline and miss percentage are confirmed from Harper’s “plate discipline” stats from fangraphs.com. For example, look at the O-Swing% below which is the percentage of outside pitches that are swung at. In Harper’s first three years, these percentages were in the middle 30s, but they have dropped in recent seasons and Harper’s O-Swing% is at its lowest value (26.1) in 2018. Harper’s plate discipline has gotten better. But look at the Z-Contact%, the percentage of pitches in the zone where this is contact. Harper’s Z-Contract% dropped over 5 percentage points in 2018 which is consistent with the graph on the miss rates.
Suppose Harper does make contact and puts the ball in-play. Has there been any change in the off-the-bat stats? First look at the launch speeds. I fit a gam model and present filled contour graphs of the fitted values using contour values of 75, 80, 85, 90, 95 mph. Harper’s power appears to be consistent across the four seasons concentrated in a region from the upper-left to lower-right portion of the zone.
Let’s explore other Statcast variables. I use the gam model to predict the spray angle — here the contour lines are at -20, 0, and 20 degrees. Since Harper is a left-handed hitter, the pull direction is at positive values of the spray angle. From 2015 to 2018, it seems that Harper pulls more balls to the right-side of the field.
Here is a graph of the smoothed launch angle values of Harper where the contours are at -10, 0, 20, and 30 degrees. It’s interesting that the 2015 Harper lofted balls that were high and inside, while the 2018 Harper lofts balls high in the zone, both inside and outside.
Reconcile with the Fangraphs Stats
Below I show the batted ball stats for Harper from fangraphs.com. Looking at the flyball percentage (FB%), Harper’s flyball percentage was about 38% the last two seasons. His Pull% in 2018 was 42.3% which is a large increase from his 2017 value of 35.5%
In-Play Home Run Rates
The filled contour graphs of Harper’s smoothed in-play home run rates didn’t come out that clearly, especially for the earlier seasons. Generally, it seems that Harper’s hot zone is a region from low-inside to high-outside of the zone. This region mirrors the region where Harper has high launch velocity
Harper’s Basic Statistics
These graphs and associated Fangraph stats explain Harper’s basic hitting statistics displayed below. Here I have clipped some stats from the Fangraph Harper page.
- His good plate discipline is reflected in his high number of walks — last year his walk percentage was 18.7%.
- But his strikeout percentage (like his miss on swings percentage) took a significant rise in 2018.
- Obviously, Harper’s has maintained good power reflected by his 34 home runs.
Updates to the CalledStrike Package
I am in the developmental phrase of writing the CalledStrike package and some of the function names may change and I likely will add new functions. This package is dependent on other packages such as ggplot2, dplyr, baseballr, mgcv, metR and they should all be installed first. Then you can install CalledStrike from my github site. A R Markdown file that provides the code for producing these Harper filled contour graphs can be found here.