Часто используемым тактиком c является использование переменной numpy для нижней части. Он инициализируется с нуля и увеличивается с помощью numpy волхвов c.
Запись всего как for
l oop имеет то преимущество, что общие параметры должны быть только написано один раз, и нужно менять только в одном месте. (В этом примере можно указать только общую ширину, но также можно задать цвет кромки, стиль заливки, прозрачность и т. Д. c.)
bottom = 0
for medal, label, color in zip ([bronzes, silvers, golds],
['bronzes', 'silvers', 'golds'],
['#CD7F32', 'silver', 'gold']):
plt.bar(ind, medal, width=0.6, label=label, color=color, bottom=bottom)
bottom += medal
Без al oop этот пример будет следующим , Когда будет много других категорий, будет сложнее поддерживать.
bottom = 0
plt.bar(ind, bronzes, width=0.6, label='bronzes', color='#CD7F32')
bottom += bronzes
plt.bar(ind, silvers, width=0.6, label='silvers', color='silver', bottom=bottom)
bottom += silvers
plt.bar(ind, golds, width=0.6, label='golds', color='gold', bottom=bottom)