Python绘制颜色以显示未知的行数

时间:2018-12-18 09:37:07

标签: python matplotlib

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

此代码可以解决问题。

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)

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

是否可以创建随机颜色列表?

1 个答案:

答案 0 :(得分:1)

来自matplotlib documentation

  

对于更大范围的颜色,您有两个选择。您可以指定   使用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