在Matplotlib中设置默认线条样式循环器

5
我可以使用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))

但是我想做一些类似于颜色循环的事情,这样我就不必每次绘图时都要新建一个循环器。我该如何做到这一点?

1个回答

9
如果您使用的是matplotlib 1.5或更高版本,则可以使用axes.prop_cyclercParam中的所有绘图属性引入循环器(而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', ['-', '--', ':', '-.'])))

请参考此示例文档了解详情。


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接