seaborn调色板 color, hls, cubehelix, dark, diverging_palette

1
2
3
import numpy as np
import matplotlib.pyplot as plt
import seaborn as sns

sns.color_palette

6种默认颜色:deep, muted, pastel, bright, dark, colorblind

还有Accent, BrBG, Blues, Paired

1
2
3
4
5
# sns.color_palette(palette=None, n_colors=None, desat=None)
sns.palplot(sns.color_palette('deep', 6, desat=0.4))  # desat 去饱和
sns.palplot(sns.color_palette('Accent', 6))
sns.palplot(sns.color_palette('Blues', 6))
sns.palplot(sns.color_palette('Blues_r', 6))  # _r 反转

在这里插入图片描述

sns.hls_palette

设置亮度,饱和度

  • l 亮度 lightness
  • s 饱和度 saturation
  • h 色调 first hue
1
sns.palplot(sns.hls_palette(8, l=0.8, s=0.9))

在这里插入图片描述

sns.cubehelix_palette

  • n_colors 颜色个数
  • start 开始颜色 0-3
  • rot 旋转角度
  • gamma 越大越暗
  • dark, light 0-1
  • reverse 默认False
1
2
3
4
5
sns.palplot(sns.cubehelix_palette(8))
sns.palplot(sns.cubehelix_palette(8, gamma=2))
sns.palplot(sns.cubehelix_palette(8, start=0.5))
sns.palplot(sns.cubehelix_palette(8, rot=-0.75))
sns.palplot(sns.cubehelix_palette(8, dark=0, light=0.95))

在这里插入图片描述

sns.dark_palette, sns.light_palette

sns.dark_palette(color, n_colors, reverse)

1
2
sns.palplot(sns.dark_palette('green'))
sns.palplot(sns.light_palette('green'))

在这里插入图片描述

sns.diverging_palette

分散颜色

  • h_neg, h_pos 起始/终止颜色值
  • s 饱和度, 0-100
  • l 亮度, 0-100
  • n 颜色个数
  • center 中心颜色 light(默认), dark
  • as_cmap 返回一个 matplotlib colormap 而不是一个颜色列表。

用分散颜色制作热力图

1
2
3
4
plt.figure(figsize=(4, 4))
x = np.arange(9).reshape(3, 3)
cmap = sns.diverging_palette(200, 20, as_cmap=True)
sns.heatmap(x, cmap=cmap)

在这里插入图片描述