for i in range(5):
plt.plot(x,y,col=i)
如何在for循环中自动更改颜色?
解决方法:
@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:
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()