如何使用matplotlib在图形中连续更改线条颜色

时间:2017-11-17 04:12:47

标签: python matplotlib graph colors

所以我画了这条线

{{1}}
他们全都是绿色的。如何让每个迭代中的每一个都改变颜色(如彩虹的顺序)?我想要达到的目标是https://developer.apple.com/documentation/corelocation/clheading

1 个答案:

答案 0 :(得分:1)

recordFilter.map{($0["amount"] as! Float)}.reduce(0, +) 接受多种类型的输入,例如RGB值的元组。但是,创建彩虹的最佳方法是使用color。幸运的是,HSV有一个matplotlib.colors函数:

hsv_to_rgb

现在,我们只想在从0迭代到n-1时切换所有值:

import matplotlib.colors as colors
color = .5 #Value between 0 and 1, 0 and 1 being red
print(colors.hsv_to_rgb((color, 1, 1)) #[ 0.  1.  1.]

你会注意到几乎所有的线条都是偏红的。这是因为大多数普遍的线是前50个,它们都非常接近红色。你可以根据自己的需要调整它;一个这样的选择就是拥有for i in range (n): color=colors.hsv_to_rgb((i/n, 1, 1)) x_n1=r_1*x*(1 -x) plt.plot([x, x], [x, x_n1], color=color) plt.plot([x, x_n1], [x_n1, x_n1], color=color) x=x_n1 plt.show()