from matplotlib import pyplot as plt
from itertools import cycle, islice
import pandas, numpy as np
x = [{i: np.random.randint(1, 5)} for i in range(10)]
df = pandas.DataFrame(x)
my_colors = list(islice(cycle(['b', 'r', 'g', 'y', 'k']), None, len(df)))
df.plot(kind='bar', stacked=True, color=my_colors)
Как задать пользовательские цвета гистограммы pandas/matplotlib