Age: 28
Bats/Throws: R/R
6' 3" / 215
P

RotoWire News: Law had his contract purchased from Triple-A Buffalo on Friday. (5/3/2019)

We hope you find the FanGraphs Player Stat Pages useful!

Please support FanGraphs by becoming a member. We publish over one thousand articles and podcasts each year, host numerous projection systems, and carry an ever growing database of baseball stats that assist you in your baseball research.

Support FanGraphs



SeasonWLSVBSGSIPTBFHRERHRBBSOK/9BB/9HR/9BABIPLOB%GB%HR/FBERAFIPxFIP
Today000001.262000000.000.000.00.333100.0 %33.3 %0.0 %0.003.106.46
2019010008.038865051011.255.630.00.34853.9 %57.1 %0.0 %5.632.473.64

SeasonTeamWLSVGGSIPK/9BB/9HR/9BABIPLOB%GB%HR/FBERAFIPxFIPWAR
2011Giants (R)00415018.09.501.000.00.31466.7 %54.0 %0.0 %2.502.602.98 
2012Giants (A)52232055.210.833.720.97.28581.2 %45.3 %11.5 %2.913.923.38 
2013Giants (R)100505.214.291.590.00.36460.0 %72.7 %0.0 %3.181.361.56 
2013Giants (A)03319035.012.342.570.26.31071.0 %39.5 %3.1 %2.312.052.47 
2013Giants (A+)401122025.215.780.350.35.38072.8 %50.0 %6.7 %2.101.011.19 
2014Giants (AA)201327028.09.324.500.32.26579.8 %50.7 %3.8 %2.573.353.77 
2015Giants (AA)011328025.211.222.810.35.40061.2 %44.0 %3.7 %4.562.222.53 
2016Giants (AAA)000303.06.003.000.00.125100.0 %37.5 %0.0 %0.003.395.39 
2016Giants42161055.08.181.470.49.27082.0 %50.3 %7.0 %2.132.533.121.0
2016Giants000302.111.573.860.00.14350.0 %57.1 %0.0 %3.861.862.57 
2017Giants (AAA)111025032.27.163.310.28.31682.2 %50.0 %3.2 %2.483.634.53 
2017Giants41441037.18.443.381.21.35774.1 %38.3 %11.1 %5.064.314.710.0
2018Giants (AAA)13833040.29.521.990.44.30553.4 %47.6 %6.3 %4.203.013.40 
2018Giants1007013.18.105.401.35.32654.1 %40.0 %11.1 %7.435.345.62-0.1
2019ATC000507.08.073.290.84.32067.3 %  4.424.00  
2019Steamer000101.08.403.240.96.29273.1 %45.4 % 3.783.864.130.0
2019ZiPS33049056.37.833.200.64.31371.6 %  3.673.52 0.5
2019Blue Jays (AAA)2128010.214.342.530.84.28681.4 %47.6 %11.1 %1.692.502.78 
2019Blue Jays010506.114.217.110.00.35345.5 %66.7 %0.0 %7.112.312.900.1
2019ZiPS (R)22 31036.08.403.460.73.31571.7 %  3.793.60 0.3
2019Steamer (R)22032032.08.933.461.27.29572.5 %  4.284.27 0.1
2019Depth Charts (R)22032032.08.673.461.00.31172.1 %  4.043.94 0.0
2019THE BAT (R)11032032.09.423.141.20.31273.2 %  3.973.97  
Total- - -9451140112.08.602.890.80.31271.3 %45.4 %9.3 %4.023.443.941.0
Postseason- - -000302.111.573.860.00.14350.0 %57.1 %0.0 %3.861.862.57 

SeasonTeamWLERAGGSCGShOSVHLDBSIPTBFHRERHRBBIBBHBPWPBKSO
2011Giants (R)002.501500043018.072166502002019
2012Giants (A)522.913200026455.2235452018623028067
2013Giants (R)103.1850000105.2214220100209
2013Giants (A)032.311900039135.014427129110314048
2013Giants (A+)402.1022000110025.298207611015045
2014Giants (AA)202.5727000131128.01131988114011029
2015Giants (AA)014.5628000131025.211631161318006032
2016Giants (AAA)000.0030000103.0111000100002
2016Giants422.1361000114155.021444131339001050
2016Giants003.8630000002.1111110100003
2017Giants (AAA)112.4825000100332.21373299112103026
2017Giants415.064100045237.1168452121514225035
2018Giants (AAA)134.203300081140.216034221929110043
2018Giants107.43700000013.16616131128011012
2019ATC004.4250  00 7.0 7441301  6
2019Steamer003.78100000 1.0410000 0  1
2019ZiPS333.67490  0  56.3 542523420123149
2019Blue Jays (AAA)211.69800021110.24273213001017
2019Blue Jays017.1150000006.13266505002010
2019ZiPS (R)223.79310     36.0 341715314 1  34
2019Steamer (R)224.283200004 32.0139311615512 1  32
2019Depth Charts (R)224.04320  04 32.0 311614412 1  31
2019THE BAT (R)113.97320  0  32.013630151441111  33
Total- - -944.021140005193112.0480111535010362390107
Postseason- - -003.8630000002.1111110100003

SeasonTeamK/9BB/9K/BBHR/9K%BB%K-BB%AVGWHIPBABIPLOB%ERA-FIP-FIP
2011Giants (R)9.501.009.500.0026.4 %2.8 %23.6 %.2291.00.31466.7 %  2.60
2012Giants (A)10.833.722.910.9728.5 %9.8 %18.7 %.2141.22.28581.2 %  3.92
2013Giants (R)14.291.599.000.0042.9 %4.8 %38.1 %.2000.88.36460.0 %  1.36
2013Giants (A)12.342.574.800.2633.3 %6.9 %26.4 %.2031.06.31071.0 %  2.05
2013Giants (A+)15.780.3545.000.3545.9 %1.0 %44.9 %.2080.82.38072.8 %  1.01
2014Giants (AA)9.324.502.070.3225.7 %12.4 %13.3 %.1941.18.26579.8 %  3.35
2015Giants (AA)11.222.814.000.3527.6 %6.9 %20.7 %.2871.52.40061.2 %  2.22
2016Giants (AAA)6.003.002.000.0018.2 %9.1 %9.1 %.1000.67.125100.0 %  3.39
2016Giants8.181.475.560.4923.4 %4.2 %19.2 %.2150.96.27082.0 %53652.53
2016Giants11.573.863.000.0027.3 %9.1 %18.2 %.1000.86.14350.0 %96481.86
2016Average8.103.142.581.1721.1 %8.2 %12.9 %.2521.32.29872.9 %  4.24
2017Giants (AAA)7.163.312.170.2819.0 %8.8 %10.2 %.2561.35.31682.2 %  3.63
2017Giants8.443.382.501.2120.8 %8.3 %12.5 %.2961.58.35774.1 %1201054.31
2017Average8.343.292.531.2721.6 %8.5 %13.1 %.2521.34.29772.6 %  4.40
2018Giants (AAA)9.521.994.780.4426.9 %5.6 %21.2 %.2271.06.30553.4 %  3.01
2018Giants8.105.401.501.3518.2 %12.1 %6.1 %.2811.80.32654.1 %1901395.34
2018Average8.533.252.631.1622.3 %8.5 %13.8 %.2451.30.29372.8 %  4.19
2019ATC8.073.292.450.84   .2611.36.32067.3 %  4.00
2019Steamer8.403.242.590.9621.9 %8.4 %13.4 %.2411.30.29273.1 %  3.86
2019ZiPS7.833.202.450.64   .2541.31.31371.6 %  3.52
2019Blue Jays (AAA)14.342.535.670.8440.5 %7.1 %33.3 %.1800.94.28681.4 %  2.50
2019Blue Jays14.217.112.000.0031.3 %15.6 %15.6 %.2221.74.35345.5 %162522.31
2019Average8.883.442.581.3223.1 %8.9 %14.1 %.2421.31.28973.0 %  4.41
2019ZiPS (R)8.403.462.430.73   .2521.33.31571.7 %  3.60
2019Steamer (R)8.933.462.581.27   .2451.34.29572.5 %  4.27
2019Depth Charts (R)8.673.462.501.00   .2521.34.31172.1 %  3.94
2019THE BAT (R)9.423.143.001.20   .2501.29.31273.2 %  3.97
Total- - -8.602.892.970.8022.3 %7.5 %14.8 %.2521.31.31271.3 %98873.44
Postseason- - -11.573.863.000.0027.3 %9.1 %18.2 %.1000.86.14350.0 %96481.86

SeasonAgeWLGGSIPHRERHRBBSOK/9BB/9K/BBHR/9AVGWHIPBABIPLOB%ERAFIPWAR
2019283349056.3542523420497.833.202.450.64.2541.31.31371.6 %3.673.520.5
2020293248055.3522322420497.973.252.450.65.2501.30.31073.8 %3.583.520.4
2021303247054.0512322419488.003.172.530.67.2511.30.31173.0 %3.673.510.4

SeasonTeamGB/FBLD%GB%FB%IFFB%HR/FBIFH%BUH%Pull%Cent%Oppo%Soft%Med%Hard%SIERAxFIP-xFIP
2011Giants (R)2.7026.0 %54.0 %20.0 %20.0 %0.0 %  52.9 %21.6 %25.5 %     2.98
2012Giants (A)1.1916.8 %45.3 %38.0 %25.0 %11.5 %  47.2 %19.4 %33.3 %     3.38
2013Giants (R)4.009.1 %72.7 %18.2 %100.0 %0.0 %  36.4 %18.2 %45.5 %     1.56
2013Giants (A)1.0021.0 %39.5 %39.5 %31.3 %3.1 %  31.8 %29.4 %38.8 %     2.47
2013Giants (A+)1.6720.0 %50.0 %30.0 %26.7 %6.7 %  49.0 %25.5 %25.5 %     1.19
2014Giants (AA)1.3511.6 %50.7 %37.7 %19.2 %3.8 %  40.6 %21.7 %37.7 %     3.77
2015Giants (AA)1.2220.0 %44.0 %36.0 %25.9 %3.7 %  34.2 %19.7 %46.1 %     2.53
2016Giants (AAA)0.600.0 %37.5 %62.5 %20.0 %0.0 %  37.5 %12.5 %50.0 %     5.39
2016Giants1.7921.6 %50.3 %28.1 %11.6 %7.0 %2.6 %0.0 %33.5 %37.4 %29.0 %21.3 %47.1 %31.6 %3.00763.12
2016Giants4.0028.6 %57.1 %14.3 %0.0 %0.0 %25.0 %0.0 %      2.87632.57
2017Giants (AAA)1.5217.0 %50.0 %33.0 %19.4 %3.2 %  42.3 %27.8 %29.9 %     4.53
2017Giants0.9822.6 %38.3 %39.1 %8.9 %11.1 %9.1 %0.0 %41.0 %33.3 %25.6 %21.4 %42.7 %35.9 %4.191094.71
2018Giants (AAA)1.5621.9 %47.6 %30.5 %21.9 %6.3 %  54.7 %25.5 %19.8 %     3.40
2018Giants1.0020.0 %40.0 %40.0 %11.1 %11.1 %11.1 %0.0 %37.8 %31.1 %31.1 %11.1 %55.6 %33.3 %4.871385.62
2019Blue Jays (AAA)1.119.5 %47.6 %42.9 %44.4 %11.1 %  31.8 %13.6 %54.6 %     2.78
2019Blue Jays5.0020.0 %66.7 %13.3 %0.0 %0.0 %0.0 %100.0 %41.2 %41.2 %17.6 %17.6 %47.1 %35.3 %3.72662.90
Total- - -1.3821.6 %45.4 %32.9 %10.2 %9.3 %5.4 %33.3 %37.1 %35.3 %27.5 %19.8 %46.7 %33.5 %3.72943.94
Postseason- - -4.0028.6 %57.1 %14.3 %0.0 %0.0 %25.0 %0.0 %      2.87632.57

SeasonTeamGBFBLDIFFBIFHBUBUHRSBallsStrikesPitches
2011Giants (R)2710132    9109118
2012Giants (A)62522313    125372497
2013Giants (R)8212    63844
2013Giants (A)32321710    75268343
2013Giants (A+)2515104    59222281
2014Giants (AA)352685    172280452
2015Giants (AA)3327157    153279432
2016Giants (AAA)3501    153045
2016Giants774333522029276520796
2016Giants41201000233053
2017Giants (AAA)4731166    198309507
2017Giants444526442017248390638
2018Giants (AAA)5032237    219397616
2018Giants1818922007107149256
2019Blue Jays (AAA)10924    68114182
2019Blue Jays1023002255082132
Total- - -14910871118625868111411822
Postseason- - -41201000233053

SeasonTeamWPA-WPA+WPARE24REWpLIinLIgmLIexLIPullsWPA/LIClutchSDMD
2016Giants0.98-2.863.8313.151.390.960.891.061.39491.14-0.13178
2016Giants0.05-0.090.140.410.050.78 0.560.7930.000.0710
2017Giants0.65-3.133.78-6.42-0.591.201.001.061.2429-0.461.01116
2018Giants0.20-0.180.38-10.11-1.100.300.390.450.003-0.751.4111
2019Blue Jays-0.42-0.560.14-3.33-0.320.610.520.740.224-0.15-0.5301
Total- - -1.42-6.728.14-6.71-0.630.930.851.011.2385-0.211.742916
Postseason- - -0.05-0.090.140.410.050.78 0.560.7930.000.0710

SeasonTeamFB%SL%CT%CB%CH%SF%KN%XX%
2016Giants52.3% (92.9)23.5% (83.8) 19.3% (76.8)4.9% (83.0)   
2017Giants54.2% (93.7)20.8% (80.6) 17.7% (75.3)7.2% (83.1)  1.1%
2018Giants51.6% (93.7)29.7% (84.7) 13.3% (76.6)5.5% (83.9)   
2019Blue Jays35.6% (93.6)40.2% (83.3) 11.4% (76.5)12.9% (85.3)   
Total- - -51.6% (93.3)24.6% (82.9) 17.3% (76.3)6.4% (83.5)  0.4%

SeasonTeamFA%FT%FC%FS%FO%SI%SL%CU%KC%EP%CH%SC%KN%UN%
2016Giants52.0 % 0.4 %   19.4 %23.5 %  4.8 %   
2017Giants53.9 %     17.9 %20.7 %  7.5 %   
2018Giants51.0 %     29.8 %13.3 %  5.9 %   
2019Blue Jays35.6 %     40.2 %11.4 %  12.9 %   
Total- - -51.3 % 0.2 %   21.8 %20.2 %  6.5 %   

SeasonTeamvFAvFTvFCvFSvFOvSIvSLvCUvKCvEPvCHvSCvKN
2016Giants92.8 92.3   84.577.4  82.8  
2017Giants93.7     80.876.0  83.3  
2018Giants93.7     84.676.6  84.3  
2019Blue Jays93.6     83.276.4  85.2  
Total- - -93.3 92.3   83.376.8  83.5  

SeasonTeamFA%FC%FS%SI%CH%SL%CU%CS%KN%SB%XX%
2016Giants52.3 %   4.9 %23.9 %18.9 %    
2017Giants54.0 %   7.3 %20.6 %18.2 %    
2018Giants51.6 %   5.5 %29.7 %13.3 %    
2019Blue Jays35.9 %   13.0 %39.7 %11.5 %    
Total- - -51.6 %   6.4 %24.7 %17.3 %    

SeasonTeamvFAvFCvFSvSIvCHvSLvCUvCSvKNvSB
2016Giants93.6   83.484.477.4   
2017Giants94.1   83.481.076.0   
2018Giants94.6   84.785.477.5   
2019Blue Jays94.0   85.683.676.7   
Total- - -94.0   83.983.576.8   

SeasonTeamwFBwSLwCTwCBwCHwSFwKNwFB/CwSL/CwCT/CwCB/CwCH/CwSF/CwKN/C
2016Giants10.24.8 -2.80.3  2.462.55 -1.840.75  
2017Giants-0.30.2 -2.4-0.5  -0.080.17 -2.15-1.11  
2018Giants-3.9-1.5 0.60.5  -2.93-1.96 1.893.67  
2019Blue Jays-3.51.0 0.40.7  -7.541.81 2.994.13  
Total- - -2.64.5 -4.21.0  0.271.00 -1.320.86  

SeasonTeamwFAwFTwFCwFSwFOwSIwSLwCUwKCwEPwCHwSCwKN
2016Giants10.5 0.2   3.4-1.2  0.2  
2017Giants0.3     0.3-2.5  -0.6  
2018Giants-3.7     -1.50.6  0.6  
2019Blue Jays-1.5     1.00.4  0.7  
Total- - -5.5 0.2   3.2-2.7  0.9  

SeasonTeamwFA/CwFT/CwFC/CwFS/CwFO/CwSI/CwSL/CwCU/CwKC/CwEP/CwCH/CwSC/CwKN/C
2016Giants2.53 5.83   2.23-0.63  0.59  
2017Giants0.09     0.27-1.93  -1.30  
2018Giants-2.84     -1.981.80  3.90  
2019Blue Jays-3.29     1.792.99  4.13  
Total- - -0.59 5.83   0.80-0.73  0.75  

SeasonTeamwFAwFCwFSwSIwCHwSLwCUwCSwKNwSB
2016Giants10.8   0.35.1-3.1   
2017Giants-0.4   -0.50.9-3.1   
2018Giants-3.6   0.5-1.60.5   
2019Blue Jays-1.5   0.70.90.4   
Total- - -5.2   1.05.3-5.2   

SeasonTeamwFA/CwFC/CwFS/CwSI/CwCH/CwSL/CwCU/CwCS/CwKN/CwSB/C
2016Giants2.59   0.712.68-2.04   
2017Giants-0.12   -1.010.71-2.73   
2018Giants-2.72   3.72-2.081.59   
2019Blue Jays-3.29   4.131.742.99   
Total- - -0.56   0.891.19-1.66   

SeasonTeamO-Swing%Z-Swing%Swing%O-Contact%Z-Contact%Contact%Zone%F-Strike%SwStr%
2016Giants27.8 %63.8 %44.9 %50.0 %90.0 %77.0 %47.5 %62.6 %10.3 %
2016Average30.3 %66.7 %46.5 %63.9 %86.3 %78.2 %44.6 %60.3 %10.1 %
2017Giants24.7 %64.9 %42.6 %62.1 %83.2 %76.5 %44.7 %56.0 %9.9 %
2017Average29.9 %66.7 %46.5 %62.9 %85.5 %77.5 %45.0 %60.3 %10.4 %
2018Giants22.4 %59.3 %38.7 %43.8 %85.1 %71.7 %44.1 %59.1 %10.9 %
2018Average30.9 %67.3 %46.6 %62.8 %85.5 %76.9 %43.0 %60.6 %10.7 %
2019Blue Jays31.3 %63.3 %43.2 %50.0 %74.2 %63.2 %37.1 %62.5 %15.9 %
2019Average30.3 %67.6 %46.2 %61.8 %84.7 %76.1 %42.7 %60.8 %11.0 %
Total- - -26.2 %63.5 %43.1 %53.3 %86.1 %75.2 %45.3 %59.8 %10.7 %

SeasonTeamO-Swing%Z-Swing%Swing%O-Contact%Z-Contact%Contact%Zone%Pace
2016Giants27.3 %60.5 %44.8 %51.5 %87.0 %76.7 %52.6 %22.4
2016Average30.6 %63.9 %46.5 %62.1 %86.5 %78.1 %47.8 %22.7
2017Giants26.1 %60.9 %42.7 %66.7 %82.2 %77.2 %47.7 %22.6
2017Average30.3 %64.1 %46.5 %61.2 %85.8 %77.4 %47.9 %23.8
2018Giants20.6 %59.7 %38.8 %42.9 %83.1 %71.7 %46.7 %21.1
2018Average30.4 %64.4 %46.6 %60.1 %85.6 %76.9 %47.7 %23.5
2019Blue Jays34.2 %55.4 %43.2 %50.0 %74.2 %63.2 %42.4 %25.9
2019Average29.9 %64.4 %46.2 %58.9 %84.7 %75.9 %47.4 %24.1
Total- - -26.5 %60.2 %43.1 %55.7 %84.1 %75.3 %49.3 %22.6

SeasonTeamO-Swing%Z-Swing%Swing%O-Contact%Z-Contact%Contact%Zone%Pace
2016Giants31.0 %58.9 %44.8 %55.2 %88.3 %76.7 %49.3 %22.9
2017Giants28.1 %59.3 %42.7 %63.8 %84.1 %77.0 %47.0 %22.7
2018Giants22.5 %57.6 %38.7 %45.2 %83.8 %71.7 %46.1 %21.1
2019Blue Jays34.7 %53.6 %42.8 %46.2 %76.7 %62.5 %42.8 %27.1
Total- - -29.0 %58.5 %43.1 %56.2 %85.5 %75.2 %47.6 %22.9

SeasonTeamPosGGSInnPOAEFETEDPDPSDPTDPFScpSBCSPBWPFPTZ
2011Giants (R)P15018.0210  1          
2012Giants (A)P32055.2561  0          
2013Giants (R)P505.2210  0          
2013Giants (A)P19035.0030  0          
2013Giants (A+)P22025.2020  0          
2014Giants (AA)P27028.0310  0          
2015Giants (AA)P28025.2020  0          
2016Giants (AAA)P303.0000  0          
2016GiantsP61055.0390001100 0   1.000 
2017Giants (AAA)P25032.2260  0          
2017GiantsP41037.1230000000 2   1.000 
2018Giants (AAA)P33040.2120  0          
2018GiantsP7013.1110000000 1   1.000 
2019Blue Jays (AAA)P8010.2120  0          
2019Blue JaysP506.1021100000 1   .667 
Total- - -P1140112.06151101100 4   .955 

SeasonTeamPosInnrSZrCERArSBrGDPrARMrGFPrPMDRSBIZPlaysRZROOZFSRFRMARMDPRRngRErrRUZRUZR/150
2016GiantsP55.00 0  012     0.9      
2017GiantsP37.10 0  0-1-1     0.0      
2018GiantsP13.10 0  000     -0.1      
2019Blue JaysP6.10 0  00-1     0.1      
Total- - -P112.00 0  000     0.9      

SeasonTeamPosInnImpossible (0%)Remote (1-10%)Unlikely (10-40%)Even (40-60%)Likely (60-90%)Routine (90-100%)
2016GiantsP55.00.0%      (0)0.0%      (0)0.0%      (0)0.0%     (0)100.0%      (3)100.0%      (6)
2017GiantsP37.10.0%      (0)0.0%      (0)0.0%      (0)0.0%     (0)0.0%      (0)100.0%      (3)
2018GiantsP13.10.0%      (0)0.0%      (1)0.0%      (0)0.0%     (0)100.0%      (1)100.0%      (1)
Total- - -P112.00.0%      (0)0.0%      (1)0.0%      (0)0.0%     (0)100.0%      (4)100.0%    (10)

SeasonTeamRA9-WARBIP-WinsLOB-WinsFDP-WinsRARWARDollarsSalary
2016Giants1.50.30.20.59.71.0$8.1 
2017Giants-0.2-0.60.4-0.20.10.0$0.1 
2018Giants-0.5-0.1-0.2-0.3-1.3-0.1($1.0) 
2019Blue Jays-0.2-0.1-0.3-0.31.20.1$1.0 
Total- - -0.7-0.40.1-0.39.71.0$8.1 


Add New Contract
  • 2011 June Amateur Draft - Round: 9, Pick: 26, Overall: 297
    • Team: San Francisco Giants
    • School: Miami Dade CC South
  • 2009 June Amateur Draft - Round: 28, Pick: 13, Overall: 844
    • Team: Texas Rangers
    • School: Seton LaSalle Catholic HS