你问题的答案与另外两个SO问题有关。
但是,您需要得到正确的颜色列表,这是使用颜色映射最容易完成的,正如对这个问题的回答中所解释的那样:Create a color generator from given colormap in matplotlib。在这里,颜色映射接受从0到1的值并返回颜色。
所以对于你的20行,你需要以1/20的步骤从0循环到1。具体来说,您希望将表单0循环到19/20,因为1映射回0。
此操作在本例中完成:import matplotlib.pyplot as plt
import numpy as np
NUM_COLORS = 20
cm = plt.get_cmap(‘gist_rainbow’)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_color_cycle([cm(1.*i/NUM_COLORS) for i in range(NUM_COLORS)])
for i in range(NUM_COLORS):
ax.plot(np.arange(10)*(i+1))
fig.savefig(‘moreColors.png’)
plt.show()
这是结果图:
其他更好(值得商榷)的解决方案
还有一
Original: https://blog.csdn.net/weixin_39668890/article/details/113495074
Author: weixin_39668890
Title: python 图例颜色_使用matplotlib创建超过20种唯一的图例颜色
原创文章受到原创版权保护。转载请注明出处:https://www.johngo689.com/769309/
转载文章受原作者版权保护。转载请注明原作者出处!