python种颜⾊循环_python–在matplotlib中绘制不同的颜⾊@tcaswell已经回答了,但是我正在键⼊我的答案,所以我会继续发布它…
有许多不同的⽅法可以做到这⼀点.⾸先,matplotlib将⾃动循环显⽰颜⾊.默认情况下,它循环显⽰蓝⾊,绿⾊,红⾊,青⾊,品红⾊,黄⾊,⿊⾊:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 1, 10)
for i in range(1, 6):
plt.plot(x, i * x + i, label='$y = {i}x + {i}$'.format(i=i))
plt.legend(loc='best')
plt.show()
如果要控制matplotlib循环的颜⾊,请使⽤ax.set_color_cycle:linspace numpy
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 1, 10)
fig, ax = plt.subplots()
ax.set_color_cycle(['red', 'black', 'yellow'])
for i in range(1, 6):
plt.plot(x, i * x + i, label='$y = {i}x + {i}$'.format(i=i))
plt.legend(loc='best')
plt.show()
如果您想明确指定将使⽤的颜⾊,只需将其传递给颜⾊kwarg(接受html颜⾊名称,rgb元组和⼗六进制字符串):
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 1, 10)
for i, color in enumerate(['red', 'black', 'blue', 'brown', 'green'], start=1):
plt.plot(x, i * x + i, color=color, label='$y = {i}x + {i}$'.format(i=i))
plt.legend(loc='best')
plt.show()
最后,如果您想从existing colormap⾃动选择指定数量的颜⾊:
import matplotlib.pyplot as plt
import numpy as np
x = np.linspace(0, 1, 10)
number = 5
cmap = _cmap('gnuplot')
colors = [cmap(i) for i in np.linspace(0, 1, number)]
for i, color in enumerate(colors, start=1):
plt.plot(x, i * x + i, color=color, label='$y = {i}x + {i}$'.format(i=i)) plt.legend(loc='best')
plt.show()

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。