2020-12-14
数据分析
00

目录

选择调色板
调色板分类
生成调色板的函数
可生成三种调色板的函数
用于生成定性调色板的函数
用于生成顺序调色板的函数
用于生成发散调色板的函数
生成调色板的方式
seaborn内置配色方案
Color Brewer库中的配色方案

title: 学习 seaborn [05]: 调色板 slug: color-seaborn date: 2020-12-14 tags:

  • seaborn
  • python category: 数据分析 link: description: type: text

选择调色板

调色板是一组颜色搭配方案,绘图时候程序从中选取颜色进行数据可视化。调色板中颜色之间的色相、饱和度、明度等差异,区别出不同系列的数据关系,因此调色板比其他元素更加影响绘图的视觉效果。

seaborn提供了一些现成的配色方案,也可以利用其提供的函数自定义调色板。

调色板分类

  • 定性调色板:一组在视觉上有差异的颜色,用于区分不具有内在顺序的离散数据;
  • 顺序调色板:一组视觉温度递增或递减的颜色,一般是单一色相,也可以是多种色相,用于当数据集的范围从相对低值(不感兴趣)到相对高值(很感兴趣)时;
  • 发散调色板:一组颜色的中间位置颜色的视觉温度最亮或最暗,然后分别向两端递增或递减,用于当数据集的低值和高值都很重要,且数据集中有明确定义的中点时。

生成调色板的函数

可生成三种调色板的函数

  • color_palette():生成调色盘,接受所有的seaborn调色板或者matplotlib Colormap或者Color Brewer库的配色方案,返回RGB元组的列表;
  • set_palette():接受与color_palette()相同参数,设置所有图像的默认配色方案;
  • xkcd_rgb():使用xkcd颜色名字设置单一颜色;
  • xkcd_palette():使用xkcd颜色名字生成调色板,适用于各种调色板;
  • choose_colorbrewer_palette():通过交互式组件辅助进行Color Brewer库的配色方案选择,适用于各种调色板,只能在Jupyter Notebook中使用;

用于生成定性调色板的函数

  • hls_palette():使用hls颜色空间生成间距相等的颜色(色调变化,明度和饱和度不变),适用于定性调色板
  • husl_palette():使用HSLuv颜色空间生成间距相等的颜色,比上述hls更符合人眼视觉感受,适用于定性调色板

用于生成顺序调色板的函数

  • cubehelix_palette():使用cubehelix调色板系统生成配色方案,适合黑白打印,且对色盲友好,适用于顺序调色板
  • choose_cubehelix_palette():通过交互式组件辅助进行cubehelix调色板的配色方案选择,只能在Jupyter Notebook中使用;
  • light_palette()dark_palette():指定一个颜色,会由明向暗或由暗向明生成一组颜色,适用于顺序调色板

用于生成发散调色板的函数

  • diverging_palette():用来创建发散调色板
  • choose_diverging_palette():通过交互式组件辅助进行发散调色板的配色方案选择,使用HSLuv颜色空间,只能在Jupyter Notebook中使用;

生成调色板的方式

seaborn中生成调色板的方式大致有三种:

  1. 直接指定一组颜色代码或名字,如color_palette()xkcd_palette()
  2. 从现成的配色方案中选取,如color_palette()中直接使用seaborn内置配色方案,或从Color Brewer网站上挑选;
  3. 利用函数生成配色方案,如hls_palette()husl_palette()cubehelix_palette()light_palette()dark_palette()diverging_palette()

如果绘图时没有特殊的美学需求,方便起见可以直接使用现成的配色方案。

seaborn内置配色方案

seaborn内置配色方案有六种,下图从上到下依次为deep(默认), muted, pastel, bright, dark, 和colorblind

python
import seaborn as sns %matplotlib inline sns.set() for i in ('deep', 'muted', 'pastel', 'bright', 'dark', 'colorblind'): cp = sns.color_palette(i) sns.palplot(cp)

Color Brewer库中的配色方案

Color Brewer库为三种类型调色板都提供了不少美观的配色方案,并且对色盲友好。

Color Brewer库地址:http://colorbrewer2.org

登陆网站后,通过选择调色板类型,颜色数量,配色方案,会得到配色方案的名称。

如上图中是个顺序调色板,配色方案名字叫PuBuGn,颜色数量是3,传递给color_palette()函数,可生成对应的调色板。

python
pc = sns.color_palette('PuBuGn', 3) sns.palplot(pc)

本文作者:tsingk

本文链接:

版权声明:本博客所有文章除特别声明外,均采用 BY-NC-SA 许可协议。转载请注明出处!