• matplotlib可视化系列之【颜色】


    颜色和排版一样,看似简单,其实非常复杂,往大了说,涉及到艺术和品味,不像数学公式,物理定理那样,是非分明。

    但是,对 matplotlib 中的颜色有些基本的了解,可以让绘出的图形颜色不至于太突兀。
    虽不能说选出完美的颜色搭配,至少是看着舒服,醒目的颜色搭配。

    颜色的种类

    颜色一般用 RGB 来表示,颜色空间主要有3种:

    1. RGB
    2. sRGB
    3. Lab

    3种颜色空间都可以用 6位的16进制表示,只是显示出来的有些微的差别,在绘图时,一定要确定好自己用的是哪个颜色空间。
    image.png

    matplotlib 有默认的10个颜色和20个颜色,绘图时如果不指定颜色,那么就会用默认用这些颜色。
    下面的代码可以打印出默认颜色:

    import matplotlib.pyplot as plt
    import matplotlib.colors as colors
    
    cmap10 = plt.get_cmap("tab10")
    cmap20 = plt.get_cmap("tab20")
    
    [colors.to_hex(cmap10(i)) for i in range(10)]
    [colors.to_hex(cmap20(i)) for i in range(20)]
    
    

    颜色的运用

    一般来说,颜色的运用根据数据的情况来定。

    序列性质的数据

    比如按照年份变化的数据,在折线图中使用单一显眼的颜色即可。
    像红色,蓝色等这种和背景区分比较明显的颜色都行。

    多个折线一起展示的时候,选择区分较大的颜色。

    分组比较的数据

    对于这种数据,不同组之间的数据用区分较大的颜色。同组内的数组可以用相同色系的渐变色来显示。
    image.png

    结合地理信息相关的数据

    类似的这类数据一般是定性展示,不像上面2种数据需要在Y轴严格定量。

    比如结合地理信息展示降水的情况,通过颜色的深浅来表示降水的是多少,从图上可以一目了然哪里的降水量比较大。
    image.png

    总结

    总之,颜色的选择就像排版一样,没有一定的法则,平时积累,多留心观察别人绘制的图形很重要。

    看到比较清晰的图,好的展示方式,记录下来,尝试应用应用,培养出绘图的感觉,慢慢就可以绘制出有自己特色的图。

  • 相关阅读:
    多种方法求解八数码问题
    C#中经常使用的几种读取XML文件的方法
    x86汇编指令具体解释
    数据结构排序系列详解之一 插入排序
    Java实现 蓝桥杯VIP 算法提高 师座操作系统
    Java实现 蓝桥杯VIP 算法提高 师座操作系统
    Java实现 蓝桥杯VIP 算法提高 盾神与砝码称重
    Java实现 蓝桥杯VIP 算法提高 盾神与砝码称重
    Java实现 蓝桥杯VIP 算法提高 盾神与砝码称重
    Java实现 蓝桥杯VIP 算法提高 盾神与砝码称重
  • 原文地址:https://www.cnblogs.com/wang_yb/p/16382833.html
Copyright © 2020-2023  润新知