0

我有一个数据框,想要遍历所有列并在图表中添加一条新线,颜色不同。

这段代码可以解决问题。

variables=df.columns

colours=['b','y','r','c','k','m']
for i, j in zip(variables, colours):
    plt.plot(df[i],j+'-o',label=i)
plt.ylim(ymin=0)
plt.gcf().set_size_inches((18, 5))
plt.legend().set_visible(True)

但是,不同的数据框可能需要更多颜色。

有没有办法创建随机颜色列表?

4

1 回答 1

1

来自 matplotlib文档

对于更大范围的颜色,您有两种选择。您可以使用 html 十六进制字符串指定颜色,如: color = '#eeefff'

您可以使用如下函数生成十六进制颜色

from random import randint

class Color:
    CHARS = "0123456789ABCDEF"

    @classmethod
    def random_hex(cls):
        color = "#"
        for k in range(6):
            i = randint(0, 15)
            color += cls.CHARS[i]
        return color
于 2018-12-18T09:44:35.390 回答