Dirichlet Rrandom

import numpy as np, numpy.random
print(np.random.dirichlet(np.ones(10),size=1))
[[0.26484875 0.03885502 0.04522422 0.00985914 0.20744135 0.12707935
  0.02899498 0.00693284 0.07410051 0.19666382]]
print(np.random.dirichlet(np.ones(10) * 100000,size=2))
[[0.10020412 0.09992234 0.09979783 0.09982607 0.09985129 0.10012894
  0.099802   0.09997873 0.100191   0.10029767]
 [0.10002576 0.0999947  0.10012054 0.09939985 0.10039342 0.10007398
  0.1002056  0.09987219 0.09979302 0.10012093]]

Assign Random Dirichlet and Map

import matplotlib.pyplot as plt
s = np.random.dirichlet((10, 5, 3), 20).transpose()
plt.barh(range(20), s[0])
<BarContainer object of 20 artists>
plt.show()

png