Als eine neuere Baseball-Strategie wird gesagt, dass es besser ist, zu schlagen, ohne einen Bunt auf die erste Basis ohne Tod zu schicken, aber ich habe mich gefragt, ob es wirklich richtig ist, also habe ich es überprüft. Ich denke, das Gleiche wurde bereits getan, aber ich habe beschlossen, es für mein eigenes Studium zu versuchen.
Ich habe es mit etwas Monte Carlo berechnet. Die Sprache ist Python. Der Code ist am Ende.
Die folgenden markanten Linien werden angenommen.
・ Alle Schläger sind einheitlich ・ Die Wahrscheinlichkeit von Treffern pro Sitz beträgt 30%, und ein Drittel der Treffer erfolgt auf doppelter Basis. ・ 35% Chance, pro Sitzplatz auf die Basis zu kommen ・ Wenn die Wahrscheinlichkeit, einen Treffer zu erzielen, 65% beträgt und ein doppelter Kill auftritt (Beispiel: kein Tod oder 1. Basis mit einem Tod), werden 50% der Treffer doppelt getötet. ・ Überlebensrate der Heimatbasis: Im Fall der zweiten Basis des Läufers werden beispielsweise 100% auf der 2. Basis und 50% auf einem einzigen Treffer erzielt. ・ Im Fall der 3. Base des Läufers werden etwa 10% der Treffer als Squeeze / Opfer behandelt (1 Out, 1 weitere Punktzahl).
Je nach Fall gibt es andere detaillierte Bedingungen, aber ich werde die Erklärung weglassen. Einzelheiten finden Sie im Code (es ist leider schwer zu sehen ...).
Die Handhabung des Feed Bunt ist wie folgt.
・ Wenn zum Zeitpunkt des Todes oder der 1. Todesbasis oder der 12. Todesbasis keine Läufer vorrücken, anstatt eine zu erhöhen (die erstere wird zur zweiten Basis für einen Tod oder zwei Todesfälle, die letztere zur 23. Todesbasis). Die Erfolgsquote beträgt 100%.
Es ist auch der Fall, dass angenommen wird, dass Home-Base-Treffer und Third-Base-Treffer nicht im Annahme-Teil des Teigs auftreten, aber da der Feed-Bunt immer als erfolgreich behandelt wird, wird die Feed-Bunt-Taktik auf vorteilhafte Weise eingestellt.
Die horizontale Achse ist die Anzahl der Angriffs-Innings und die vertikale Achse ist die erwartete Punktzahl pro Inning. Zusätzlich zeigt die rote Linie die Schwankung des Wertes, wenn das erzwungene Maß genommen wird, und die blaue Linie zeigt die Schwankung des Wertes, wenn das sendende Bunt-Maß genommen wird. Wie in der Abbildung gezeigt, ist die erwartete Punktzahl höher, wenn die Trefferwahrscheinlichkeit pro Treffersitz im Durchschnitt etwa 30% beträgt, wenn Sie harte Maßnahmen ergreifen.
Ich habe den Fall berechnet, in dem die Trefferwahrscheinlichkeit pro Sitzplatz auf 25% und die Wahrscheinlichkeit, pro Sitzplatz auf die Basis zu kommen, auf 30% geändert wurde. Andere Bedingungen sind dieselben wie bei der vorherigen Berechnung. Wie in der Abbildung gezeigt, ist die erwartete Punktzahl etwas höher, wenn die Feed-Bunt-Messung durchgeführt wird.
Es überrascht nicht, dass sich effektive Strategien in Abhängigkeit von der Trefferwahrscheinlichkeit ändern. Ich habe verschiedene Bedingungen nicht ausprobiert, daher kann ich es nicht unbedingt sagen, aber ich habe das Gefühl, dass es einen Wendepunkt gibt, an dem die Trefferwahrscheinlichkeit pro Sitzplatz etwa 25% beträgt (oder die Wahrscheinlichkeit, pro Sitzplatz auf die Basis zu kommen, 30% beträgt). ..
Danach ist die Anzahl der Test-Innings für Turnierspiele wie High-School-Baseball zu gering. Ich denke, es gibt einen Teil, in dem nicht gesagt werden kann, dass beide Strategien effektiv funktionieren. Um es anders herum auszudrücken, ich finde es interessant, dass die Farben für jedes Team durch verschiedene beste Strategien hervorgehoben werden.
Ich möchte es verbessern, damit die Trefferquote usw. für jeden Schlagmann streng festgelegt werden kann, und ich denke, es wäre besser, Faktoren wie Stehlen einzubeziehen.
Der Code wird unten angezeigt. Es ist sehr überflüssig und kompliziert, weil es ein Anfänger ist ... Ich möchte dies auch verbessern. Die folgende Berechnung gilt für Ergebnis 2.
Baseball_Simulator_v1.py
#coding: utf-8
#average_Hitting=0.25
#average_go_on_base=0.30
import numpy as np
import random
import matplotlib.pyplot as plt
random.seed(0)
def HitResult(p,runner,out,R):
#no runner
if runner == 0:
if p < 0.:
R = R+1 #homerun
elif p < 0.:
runner = 3 #triple
elif p < 0.083333:
runner = 2 #double
elif p < 0.30:
runner = 1 #single
else:
out = out+1 #out
#runner on base1
elif runner == 1:
if p < 0.:
runner = 0
R = R+2 #two run homerun
elif p < 0.:
runner = 3
R = R+1 #clutch triple
elif p < 0.041666:
runner = 2
R = R+1 #clutch double
elif p < 0.083333:
runner = 23 #double
elif p < 0.166666:
runner = 13 #single with base3
elif p < 0.3:
runner = 12 #single or walk
elif p < 0.65:
out = out+1 #out
else:
runner = 0
out = out+2 #double play
#runner on base2
elif runner == 2:
if p < 0.:
runner = 0
R = R+2 #two run homerun
elif p < 0.:
runner = 3 #clutch triple
R = R+1
elif p < 0.083333:
R = R+1 #clutch double
elif p < 0.166666:
runner = 1
R = R+1 #clutch single
elif p < 0.25:
runner = 13 #single
elif p < 0.30:
runner = 12 #walk
elif p < 0.9:
out = out+1 #out
else:
runner = 0
out = out+2 #double play
#runner on base3
elif runner == 3:
if p < 0.:
runner = 0
R = R+2 #two run homerun
elif p < 0.:
runner = 3
R = R+1 #clutch triple
elif p < 0.083333:
runner = 2
R = R+1 #clutch double
elif p < 0.25:
runner = 1
R = R+1 #clutch single
elif p < 0.30:
runner = 13 #walk
elif p < 0.45:
if out <= 1:
runner = 0
R = R+1
out = out+1 #sacrifice out
elif p < 0.9:
out = out+1 #out
else:
runner = 0
out = out+2 #double play
#runner on base1 and base2
elif runner == 12:
if p < 0.:
runner = 0
R = R+3 #three run homerun
elif p < 0.:
runner = 3
R = R+2 #2 clutches triple
elif p < 0.041666:
runner = 2
R = R+2 #2 clutches double
elif p < 0.083333:
runner = 23
R = R+1 #clutch double
elif p < 0.138888:
runner = 13
R = R+1 #clutch single with base3
elif p < 0.194444:
runner = 12
R = R+1 #clutch single
elif p < 0.30:
runner = 123 #single or walk
elif p < 0.65:
out = out+1 #out
elif p < 0.825:
runner = 2
out = out+2 #double play through base3
elif p < 0.99:
runner = 3
out = out+2 #double play through base2
else:
runner = 0
out = out+3 #triple play
#runner on base1 and base3
elif runner == 13:
if p < 0.:
runner = 0
R = R+3 #three run homerun
elif p < 0.:
runner = 3
R = R+2 #2 clutches triple
elif p < 0.041666:
runner = 2
R = R+2 #2 clutches double
elif p < 0.083333:
runner = 23
R = R+1 #clutch double
elif p < 0.166666:
runner = 13
R = R+1 #clutch single with base3
elif p < 0.25:
runner = 12
R = R+1 #clutch single
elif p < 0.30:
runner = 123 #walk
elif p < 0.45:
if out <= 1:
runner = 1
R = R+1
out = out+1 #sacrifice out
elif p < 0.52:
if out <= 1:
R = R+1
runner = 1
out = out+1 #double play failure
elif p < 0.68:
out = out+1 #out
elif p < 0.84:
runner = 12
out = out+1 #out on home
elif p < 0.99:
if out == 0:
R = R+1
out = out+2 #double play
else:
out = out+3 #triple play
#runner on base2 and base3
elif runner == 23:
if p < 0.:
runner = 0
R = R+3 #three run homerun
elif p < 0.:
runner = 3
R = R+2 #2 clutches triple
elif p < 0.083333:
runner = 2
R = R+2 #2 clutches double
elif p < 0.166666:
runner = 1
R = R+2 #2 clutches single
elif p < 0.25:
runner = 13
R = R+1 #clutch single
elif p < 0.30:
runner = 123 #walk
elif p < 0.45:
if out <= 1:
runner = 2
R = R+1
out = out+1 #sacrifice out
elif p < 0.9:
out = out+1 #out
elif p < 0.995:
runner = 2
out = out+2 #double play
else:
runner = 0
out = out+3 #triple play
#runner on all bases
else:
if p < 0.:
runner = 0
R = R+4 #four run homerun
elif p < 0.:
runner = 3
R = R+3 #3 clutches triple
elif p < 0.041666:
runner = 2
R = R+3 #3 clutches double
elif p < 0.083333:
runner = 23
R = R+2 #2 clutches double
elif p < 0.138888:
runner = 13
R = R+2 #2 clutches single with base3
elif p < 0.194444:
runner = 12
R = R+2 #2 clutches single
elif p < 0.30:
R = R+1 #clutch single or clutch walk
elif p < 0.45:
if out <= 1:
runner = 12
R = R+1
out = out+1 #sacrifice out
elif p < 0.675:
out = out+1 #out
elif p < 0.99:
runner = 23
out = out+2 #double play through home
else:
runner = 0
out = out+3 #triple play
return runner,out,R
def BuntResult(p,runner,out,R):
#no runner
if runner == 0:
if p < 0.:
R = R+1 #homerun
elif p < 0.:
runner = 3 #triple
elif p < 0.1:
runner = 2 #double
elif p < 0.35:
runner = 1 #single
else:
out = out+1 #out
#runner on base1
elif runner == 1:
if out == 2:
if p < 0.:
runner = 0
R = R+2 #two run homerun
elif p < 0.:
runner = 3
R = R+1 #clutch triple
elif p < 0.041666:
runner = 2
R = R+1 #clutch double
elif p < 0.083333:
runner = 23 #double
elif p < 0.166666:
runner = 13 #single with base3
elif p < 0.30:
runner = 12 #single
elif p < 0.65:
out = out+1 #out
else:
runner = 0
out = out+2 #double play
else:
if p < 1.:
runner = 2
out = out+1 #sacrifice bunt
elif p < 999:
out = out+1 #bunt failure
else:
runner = 0
out = out+2 #double play
#runner on base2
elif runner == 2:
if out == 0:
if p < 1.:
runner = 3
out = out+1 #sacrifice bunt
elif p < 999:
out = out+1 #bunt failure
else:
runner = 1
out = out+1 #bunt failure
else:
if p < 0.:
runner = 0
R = R+2 #two run homerun
elif p < 0.:
runner = 3 #clutch triple
R = R+1
elif p < 0.083333:
R = R+1 #clutch double
elif p < 0.166666:
runner = 1
R = R+1 #clutch single
elif p < 0.25:
runner = 13 #single
elif p < 0.30:
runner = 12 #walk
elif p < 0.9:
out = out+1 #out
else:
runner = 0
out = out+2 #double play
#runner on base3
elif runner == 3:
if p < 0.:
runner = 0
R = R+2 #two run homerun
elif p < 0.:
runner = 3
R = R+1 #clutch triple
elif p < 0.083333:
runner = 2
R = R+1 #clutch double
elif p < 0.25:
runner = 1
R = R+1 #clutch single
elif p < 0.30:
runner = 13 #walk
elif p < 0.45:
if out <= 1:
runner = 0
R = R+1
out = out+1 #sacrifice out
elif p < 0.9:
out = out+1 #out
else:
runner = 0
out = out+2 #double play
#runner on base1 and base2
elif runner == 12:
if out == 0:
if p < 1.:
runner = 23
out = out+1 #sacrifice bunt
elif p < 999:
out = out+1 #bunt failure
else:
runner = 2
out = out+2 #bunt failure (double play)
else:
if p < 0.:
runner = 0
R = R+3 #three run homerun
elif p < 0.:
runner = 3
R = R+2 #2 clutches triple
elif p < 0.041666:
runner = 2
R = R+2 #2 clutches double
elif p < 0.083333:
runner = 23
R = R+1 #clutch double
elif p < 0.138888:
runner = 13
R = R+1 #clutch single with base3
elif p < 0.194444:
runner = 12
R = R+1 #clutch single
elif p < 0.30:
runner = 123 #single or walk
elif p < 0.65:
out = out+1 #out
elif p < 0.825:
runner = 2
out = out+2 #double play through base3
elif p < 0.99:
runner = 3
out = out+2 #double play through base2
else:
runner = 0
out = out+3 #triple play
#runner on base1 and base3
elif runner == 13:
if p < 0.:
runner = 0
R = R+3 #three run homerun
elif p < 0.:
runner = 3
R = R+2 #2 clutches triple
elif p < 0.041666:
runner = 2
R = R+2 #2 clutches double
elif p < 0.083333:
runner = 23
R = R+1 #clutch double
elif p < 0.166666:
runner = 13
R = R+1 #clutch single with base3
elif p < 0.25:
runner = 12
R = R+1 #clutch single
elif p < 0.30:
runner = 123 #walk
elif p < 0.45:
if out <= 1:
runner = 1
R = R+1
out = out+1 #sacrifice out
elif p < 0.52:
if out <= 1:
R = R+1
runner = 1
out = out+1 #double play failure
elif p < 0.68:
out = out+1 #out
elif p < 0.84:
runner = 12
out = out+1 #out on home
elif p < 0.99:
if out == 0:
R = R+1
out = out+2 #double play
else:
out = out+3 #triple play
#runner on base2 and base3
elif runner == 23:
if p < 0.:
runner = 0
R = R+3 #three run homerun
elif p < 0.:
runner = 3
R = R+2 #2 clutches triple
elif p < 0.083333:
runner = 2
R = R+2 #2 clutches double
elif p < 0.166666:
runner = 1
R = R+2 #2 clutches single
elif p < 0.25:
runner = 13
R = R+1 #clutch single
elif p < 0.30:
runner = 123 #walk
elif p < 0.45:
if out <= 1:
runner = 2
R = R+1
out = out+1 #sacrifice out
elif p < 0.9:
out = out+1 #out
elif p < 0.995:
runner = 2
out = out+2 #double play
else:
runner = 0
out = out+3 #triple play
#runner on all bases
else:
if p < 0.:
runner = 0
R = R+4 #four run homerun
elif p < 0.:
runner = 3
R = R+3 #3 clutches triple
elif p < 0.041666:
runner = 2
R = R+3 #3 clutches double
elif p < 0.083333:
runner = 23
R = R+2 #2 clutches double
elif p < 0.138888:
runner = 13
R = R+2 #2 clutches single with base3
elif p < 0.194444:
runner = 12
R = R+2 #2 clutches single
elif p < 0.30:
R = R+1 #clutch single or clutch walk
elif p < 0.45:
if out <= 1:
runner = 12
R = R+1
out = out+1 #sacrifice out
elif p < 0.65:
out = out+1 #out
elif p < 0.99:
runner = 23
out = out+2 #double play through home
else:
runner = 0
out = out+3 #triple play
return runner,out,R
#Initial condition
inning = 1
max_inning = 10000
runner = 0
out = 0
R = 0
sum_num1 = 0
sum_num2 = 0
sum_num3 = 0
sum_num4 = 0
sum_num5 = 0
sum_num6 = 0
sum_num7 = 0
sum_num8 = 0
sum_num9 = 0
sum_num10 = 0
R_array_Hit1 = np.zeros((max_inning+1,1))
R_array_Hit2 = np.zeros((max_inning+1,1))
R_array_Hit3 = np.zeros((max_inning+1,1))
R_array_Hit4 = np.zeros((max_inning+1,1))
R_array_Hit5 = np.zeros((max_inning+1,1))
R_array_Hit6 = np.zeros((max_inning+1,1))
R_array_Hit7 = np.zeros((max_inning+1,1))
R_array_Hit8 = np.zeros((max_inning+1,1))
R_array_Hit9 = np.zeros((max_inning+1,1))
R_array_Hit10 = np.zeros((max_inning+1,1))
Exp_R_Hit1 = np.zeros((max_inning+1,1))
Exp_R_Hit2 = np.zeros((max_inning+1,1))
Exp_R_Hit3 = np.zeros((max_inning+1,1))
Exp_R_Hit4 = np.zeros((max_inning+1,1))
Exp_R_Hit5 = np.zeros((max_inning+1,1))
Exp_R_Hit6 = np.zeros((max_inning+1,1))
Exp_R_Hit7 = np.zeros((max_inning+1,1))
Exp_R_Hit8 = np.zeros((max_inning+1,1))
Exp_R_Hit9 = np.zeros((max_inning+1,1))
Exp_R_Hit10 = np.zeros((max_inning+1,1))
#inning_array = np.zeros((max_inning+1,1))
#Simulation in case of hitting
for i in range(1,11):
for inning in range(1,max_inning+1):
while True:
p = random.random()
runner,out,R = HitResult(p,runner,out,R)
if out >= 3:
break
if i == 1:
R_array_Hit1[inning,0] = R
sum_num1 = sum_num1 + R
Exp_R_Hit1[inning,0] = float(sum_num1)/inning
elif i == 2:
R_array_Hit2[inning,0] = R
sum_num2 = sum_num2 + R
Exp_R_Hit2[inning,0] = float(sum_num2)/inning
elif i == 3:
R_array_Hit3[inning,0] = R
sum_num3 = sum_num3 + R
Exp_R_Hit3[inning,0] = float(sum_num3)/inning
elif i == 4:
R_array_Hit4[inning,0] = R
sum_num4 = sum_num4 + R
Exp_R_Hit4[inning,0] = float(sum_num4)/inning
elif i == 5:
R_array_Hit5[inning,0] = R
sum_num5 = sum_num5 + R
Exp_R_Hit5[inning,0] = float(sum_num5)/inning
elif i == 6:
R_array_Hit6[inning,0] = R
sum_num6 = sum_num6 + R
Exp_R_Hit6[inning,0] = float(sum_num6)/inning
elif i == 7:
R_array_Hit7[inning,0] = R
sum_num7 = sum_num7 + R
Exp_R_Hit7[inning,0] = float(sum_num7)/inning
elif i == 8:
R_array_Hit8[inning,0] = R
sum_num8 = sum_num8 + R
Exp_R_Hit8[inning,0] = float(sum_num8)/inning
elif i == 9:
R_array_Hit9[inning,0] = R
sum_num9 = sum_num9 + R
Exp_R_Hit9[inning,0] = float(sum_num9)/inning
else:
R_array_Hit10[inning,0] = R
sum_num10 = sum_num10 + R
Exp_R_Hit10[inning,0] = float(sum_num10)/inning
#Initialize conditions
runner = 0
out = 0
R = 0
inning = inning+1
i = i+1
#Initial condition
inning = 1
max_inning = 10000
runner = 0
out = 0
R = 0
sum_num1 = 0
sum_num2 = 0
sum_num3 = 0
sum_num4 = 0
sum_num5 = 0
sum_num6 = 0
sum_num7 = 0
sum_num8 = 0
sum_num9 = 0
sum_num10 = 0
R_array_Bunt1 = np.zeros((max_inning+1,1))
R_array_Bunt2 = np.zeros((max_inning+1,1))
R_array_Bunt3 = np.zeros((max_inning+1,1))
R_array_Bunt4 = np.zeros((max_inning+1,1))
R_array_Bunt5 = np.zeros((max_inning+1,1))
R_array_Bunt6 = np.zeros((max_inning+1,1))
R_array_Bunt7 = np.zeros((max_inning+1,1))
R_array_Bunt8 = np.zeros((max_inning+1,1))
R_array_Bunt9 = np.zeros((max_inning+1,1))
R_array_Bunt10 = np.zeros((max_inning+1,1))
Exp_R_Bunt1 = np.zeros((max_inning+1,1))
Exp_R_Bunt2 = np.zeros((max_inning+1,1))
Exp_R_Bunt3 = np.zeros((max_inning+1,1))
Exp_R_Bunt4 = np.zeros((max_inning+1,1))
Exp_R_Bunt5 = np.zeros((max_inning+1,1))
Exp_R_Bunt6 = np.zeros((max_inning+1,1))
Exp_R_Bunt7 = np.zeros((max_inning+1,1))
Exp_R_Bunt8 = np.zeros((max_inning+1,1))
Exp_R_Bunt9 = np.zeros((max_inning+1,1))
Exp_R_Bunt10 = np.zeros((max_inning+1,1))
#inning_array = np.zeros((max_inning+1,1))
#Simulation in case of bunt
for i in range(1,11):
for inning in range(1,max_inning+1):
while True:
p = random.random()
runner,out,R = BuntResult(p,runner,out,R)
if out >= 3:
break
if i == 1:
R_array_Bunt1[inning,0] = R
sum_num1 = sum_num1 + R
Exp_R_Bunt1[inning,0] = float(sum_num1)/inning
elif i == 2:
R_array_Bunt2[inning,0] = R
sum_num2 = sum_num2 + R
Exp_R_Bunt2[inning,0] = float(sum_num2)/inning
elif i == 3:
R_array_Bunt3[inning,0] = R
sum_num3 = sum_num3 + R
Exp_R_Bunt3[inning,0] = float(sum_num3)/inning
elif i == 4:
R_array_Bunt4[inning,0] = R
sum_num4 = sum_num4 + R
Exp_R_Bunt4[inning,0] = float(sum_num4)/inning
elif i == 5:
R_array_Bunt5[inning,0] = R
sum_num5 = sum_num5 + R
Exp_R_Bunt5[inning,0] = float(sum_num5)/inning
elif i == 6:
R_array_Bunt6[inning,0] = R
sum_num6 = sum_num6 + R
Exp_R_Bunt6[inning,0] = float(sum_num6)/inning
elif i == 7:
R_array_Bunt7[inning,0] = R
sum_num7 = sum_num7 + R
Exp_R_Bunt7[inning,0] = float(sum_num7)/inning
elif i == 8:
R_array_Bunt8[inning,0] = R
sum_num8 = sum_num8 + R
Exp_R_Bunt8[inning,0] = float(sum_num8)/inning
elif i == 9:
R_array_Bunt9[inning,0] = R
sum_num9 = sum_num9 + R
Exp_R_Bunt9[inning,0] = float(sum_num9)/inning
else:
R_array_Bunt10[inning,0] = R
sum_num10 = sum_num10 + R
Exp_R_Bunt10[inning,0] = float(sum_num10)/inning
#Initialize conditions
runner = 0
out = 0
R = 0
inning = inning+1
i = i+1
ave_Exp_R_Hit = np.zeros((max_inning+1,1))
ave_Exp_R_Bunt = np.zeros((max_inning+1,1))
all_Exp_R_Hit = np.array([])
all_Exp_R_Hit = np.hstack((Exp_R_Hit1,Exp_R_Hit2,Exp_R_Hit3,Exp_R_Hit4,Exp_R_Hit5,Exp_R_Hit6,Exp_R_Hit7,Exp_R_Hit8,Exp_R_Hit9,Exp_R_Hit10))
all_Exp_R_Bunt = np.array([])
all_Exp_R_Bunt = np.hstack((Exp_R_Bunt1,Exp_R_Bunt2,Exp_R_Bunt3,Exp_R_Bunt4,Exp_R_Bunt5,Exp_R_Bunt6,Exp_R_Bunt7,Exp_R_Bunt8,Exp_R_Bunt9,Exp_R_Bunt10))
for inning in range(1,max_inning+1):
ave_Exp_R_Hit[inning,0] = np.average(all_Exp_R_Hit[inning,:])
ave_Exp_R_Bunt[inning,0] = np.average(all_Exp_R_Bunt[inning,:])
print "Exp_RunScore_Hitting",ave_Exp_R_Hit[max_inning,0]
print "Exp_RunScore_Bunt",ave_Exp_R_Bunt[max_inning,0]
plt.xlabel("Number of innings")
plt.ylabel("Expected Runs Score per inning")
plt.axis([0,max_inning,0.0,2])
plt.plot(Exp_R_Hit1,'r',alpha=0.2)
plt.plot(Exp_R_Hit2,'r',alpha=0.2)
plt.plot(Exp_R_Hit3,'r',alpha=0.2)
plt.plot(Exp_R_Hit4,'r',alpha=0.2)
plt.plot(Exp_R_Hit5,'r',alpha=0.2)
plt.plot(Exp_R_Hit6,'r',alpha=0.2)
plt.plot(Exp_R_Hit7,'r',alpha=0.2)
plt.plot(Exp_R_Hit8,'r',alpha=0.2)
plt.plot(Exp_R_Hit9,'r',alpha=0.2)
plt.plot(Exp_R_Hit10,'r',alpha=0.2)
plt.plot(ave_Exp_R_Hit,'r',label="Hitting")
plt.plot(Exp_R_Bunt1,'b',alpha=0.2)
plt.plot(Exp_R_Bunt2,'b',alpha=0.2)
plt.plot(Exp_R_Bunt3,'b',alpha=0.2)
plt.plot(Exp_R_Bunt4,'b',alpha=0.2)
plt.plot(Exp_R_Bunt5,'b',alpha=0.2)
plt.plot(Exp_R_Bunt6,'b',alpha=0.2)
plt.plot(Exp_R_Bunt7,'b',alpha=0.2)
plt.plot(Exp_R_Bunt8,'b',alpha=0.2)
plt.plot(Exp_R_Bunt9,'b',alpha=0.2)
plt.plot(Exp_R_Bunt10,'b',alpha=0.2)
plt.plot(ave_Exp_R_Bunt,'b',label="Bunt")
plt.legend()
plt.grid(True)
plt.savefig('ex_v2_2_Simuresult.png')
'''
plt.hist(R_array_Hit,bins=10)
plt.hist(R_array_Bunt,bins=10)
plt.show()
'''
quit()
Recommended Posts