我可以使用matplotlib.rcParams['axes.color_cycle'] = my_color_list
为matplotlib中的行设置默认颜色循环,但我无法弄清楚如何使用线型(即'-','--','-.',':'
)执行相同的操作。我知道我可以使用像
linecycler = itertools.cycle(lines)
for i in range(n):
plt.plot(x[i],y[i],next(linecycler))
但是我希望能够做更像颜色循环的事情,所以每次我想绘制时我都不需要制作新的循环仪。我怎么能这样做?
答案 0 :(得分:6)
如果您正在运行matplotlib 1.5或更高版本,那么您可以使用rcParam
在axes.prop_cycle
中为所有绘图属性引入循环器(并且axes.color_cycle
已被弃用,而不是axes.prop_cycle
})。简而言之,您应该能够沿着这些方向做点什么:
import matplotlib.pyplot as plt
from cycler import cycler
plt.rc('axes', prop_cycle=(cycler('color', ['r', 'g', 'b', 'y']) +
cycler('linestyle', ['-', '--', ':', '-.'])))
有关详细信息,请参阅this example和the docs。