一:
import numpy as np
from scipy.stats import beta
import matplotlib.pyplot as plt
from scipy import stats
colors = [
'green',
'red',
'orange',
'brown',
'pink',
'gray',
'olive',
'blue',
'purple',
]
x = np.linspace(0, 1, 1001)[1:-1]
fig, ax = plt.subplots()
ks = [8, 20, 80]
ns = [20, 50, 200]
for i in range(len(ks)):
a = ks[i]
b = ns[i] - ks[i]
y = stats.beta(a, b).pdf(x)
plt.plot(x, y, c=colors[i], label='n={}'.format(ns[i]), linewidth='2.25')
pa = (a - 1) / (a + b - 2)
y_max = beta.pdf(pa, a, b)
plt.plot(pa, y_max, c=colors[i], marker='o', markersize=5)
ax.annotate(r'a', xy=(pa, y_max), xytext=(pa + 0.02, y_max + 0.04),
arrowprops=dict(facecolor=colors[i