Есть много вещей, которые вы можете сделать с помощью matplotlib, чтобы принудительно масштабировать ось y, чтобы она нормализовала все до 100%, как показано здесь: 100% столбчатая диаграмма в MatPlotLib
ОднакоВаша проблема может быть решена намного проще.
Если это ваш фрейм данных с двумя ключевыми столбцами, Class и STRAT:
import pandas as pd
import numpy as np
df = pd.DataFrame({'Class': 2*['a', 'b', 'c', 'd'],'STRAT': 'x', 'y', 'x', 'z','y','x','z','w'],'value': np.random.randint(0, int(1e2),8)})
Тогда вы можете легко рассчитать% ges следующим образом:
df_pct = (df.groupby(['STRAT','Class'])['value'].count()/df.groupby(['STRAT'])['value'].count())
Инаконец, вы можете построить график точно так же, как в своем коде:
df_pct.unstack().plot.bar(stacked=True)