我有一堆图表,每个图表上大约有15到20条线。 我想循环使用颜色和线条样式来获得许多独特的线条。 如果我使用6种颜色和4种线条样式,则应该有20条唯一的线条,但是下面的代码只会产生6条。 我做错了什么?
这是一个虚假的数据集
import matplotlib.pyplot as plt
from cycler import cycler
import numpy
import seaborn
seaborn.set_style('white')
x = range(10)
ys = []
for i in range(20):
ys.append(numpy.random.uniform(1, 10, size=10)*i)
这是我从其他帖子中获取到的信息:
plt.rc('axes', prop_cycle=(cycler('color', ['r', 'g', 'b', 'y', 'c', 'k']) +
cycler('linestyle', ['-', '--', ':', '-.', '-', '--'])))
注意我在 linestyle cycler 中使用了重复的元素,否则会出现 ValueError 错误。并且进行绘图。
plt.figure()
for i in range(20):
plt.plot(x, ys[i], label=i)
plt.legend(loc=(1, 0.1))
plt.show()