美文网首页
Python数据分析与机器学习7-Seaborn之调色版

Python数据分析与机器学习7-Seaborn之调色版

作者: 只是甲 | 来源:发表于2022-07-08 11:04 被阅读0次

    一. 调色版简介

    颜色很重要
    color_palette()能传入任何Matplotlib所支持的颜色
    color_palette()不写参数则默认颜色
    set_palette()设置所有图的颜色

    二. 分类色版

    10个默认的颜色循环主题

    代码:

    import numpy as np
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    current_palette = sns.color_palette()
    sns.palplot(current_palette)
    
    plt.show()
    

    测试记录:

    image.png

    三. 圆形画板

    当你有10个以上的分类要区分时,最简单的方法就是在一个圆形的颜色空间中画出均匀间隔的颜色(这样的色调会保持亮度和饱和度不变)。这是大多数的当他们需要使用比当前默认颜色循环中设置的颜色更多时的默认方案。

    最常用的方法是使用hls的颜色空间,这是RGB值的一个简单转换。

    代码1:

    import numpy as np
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    sns.palplot(sns.color_palette("hls", 12))
    
    plt.show()
    

    测试记录1:

    image.png

    hls_palette()函数来控制颜色的亮度和饱和
    l-亮度 lightness
    s-饱和 saturation

    代码2:

    import numpy as np
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    sns.palplot(sns.hls_palette(12, l=.7, s=.9))
    
    plt.show()
    

    测试记录2:

    image.png

    四. 使用xkcd颜色来命名颜色

    xkcd包含了一套众包努力的针对随机RGB色的命名。产生了954个可以随时通过xdcd_rgb字典中调用的命名颜色。

    代码1:

    import numpy as np
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    plt.plot([0, 1], [0, 1], sns.xkcd_rgb["pale red"], lw=3)
    plt.plot([0, 1], [0, 2], sns.xkcd_rgb["medium green"], lw=3)
    plt.plot([0, 1], [0, 3], sns.xkcd_rgb["denim blue"], lw=3)
    
    plt.show()
    

    测试1:

    image.png

    代码2:

    import numpy as np
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    colors = ["windows blue", "amber", "greyish", "faded green", "dusty purple"]
    sns.palplot(sns.xkcd_palette(colors))
    
    plt.show()
    

    测试2:

    image.png

    五. 连续色板

    色彩随数据变换,比如数据越来越重要则颜色越来越深

    代码:

    import numpy as np
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    sns.palplot(sns.color_palette("Blues"))
    
    # 如果想要翻转渐变,可以在面板名称中添加一个_r后缀
    sns.palplot(sns.color_palette("BuGn_r"))
    
    plt.show()
    

    测试记录:

    image.png
    image.png

    六. cubehelix_palette()调色板

    色调线性变换

    代码:

    import numpy as np
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    sns.palplot(sns.color_palette("cubehelix", 8))
    sns.palplot(sns.cubehelix_palette(8, start=.5, rot=-.75))
    sns.palplot(sns.cubehelix_palette(8, start=.75, rot=-.150))
    
    plt.show()
    

    测试记录:

    image.png
    image.png
    image.png

    七. light_palette() 和dark_palette()调用定制连续调色板

    代码:

    import numpy as np
    import seaborn as sns
    import matplotlib.pyplot as plt
    
    sns.palplot(sns.light_palette("green"))
    sns.palplot(sns.dark_palette("purple"))
    sns.palplot(sns.light_palette("navy", reverse=True))
    
    plt.show()
    

    测试记录:

    image.png
    image.png
    image.png

    参考:

    1. https://study.163.com/course/introduction.htm?courseId=1003590004#/courseDetail?tab=1

    相关文章

      网友评论

          本文标题:Python数据分析与机器学习7-Seaborn之调色版

          本文链接:https://www.haomeiwen.com/subject/emhsbrtx.html