【发布时间】:2018-05-17 06:06:19
【问题描述】:
我有一堆图表,每个图表大约有 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 循环器中使用了重复项,否则我们会得到 ValueError。
和绘图
plt.figure()
for i in range(20):
plt.plot(x, ys[i], label=i)
plt.legend(loc=(1, 0.1))
plt.show()
【问题讨论】:
标签: python matplotlib