I am having more then 40 items to show in my chart. I have only 10 colours that repeatedly are shown on the chart. How can I generate more colors.
plt.pie(f,labels=labels,autopct='%1.1f%%', startangle=90,shadow=True)
I should add "color=colors" where colors is generated infinitely ?
You need colors
argument, beside that you can use some color maps from cm
.
>>> import matplotlib.pyplot as plt
>>> from matplotlib import cm
>>> import numpy as np
>>> a=np.random.random(40)
>>> cs=cm.Set1(np.arange(40)/40.)
>>> f=plt.figure()
>>> ax=f.add_subplot(111, aspect='equal')
>>> p=plt.pie(a, colors=cs)
>>> plt.show()
Beside using colormaps, also consider using .set_color_cycle()
method. See this post: plotting different colors in matplotlib