Seaborn - 调色板

在可视化中,颜色比任何其他方面都起着重要作用。 如果使用得当,颜色会为图增加更多价值。 调色板是指画家在其上排列和混合颜料的平面。


构建调色板

Seaborn 提供了一个名为color_palette() 的函数,可用于为图形赋予颜色并为其增加更多的美学价值。

用法

seaborn.color_palette(palette = None, n_colors = None, desat = None)

参数

下表列出了构建调色板的参数 −

序号 参数 & 描述
1

n_colors

调色板中的颜色数量。 如果没有,默认值将取决于调色板的指定方式。 默认情况下,n_colors 的值为 6 种颜色。

2

desat

降低每种颜色饱和度的比例。

Return

Return 指的是 RGB 元组列表。 以下是现成的 Seaborn 调色板 −

  • Deep
  • Muted
  • Bright
  • Pastel
  • Dark
  • Colorblind

除此之外,还可以生成新的调色板

在不知道数据特征的情况下,很难决定应该为给定的数据集使用哪个调色板。 意识到这一点,我们将对使用 color_palette() 类型的不同方式进行分类 −

  • 定性
  • 顺序
  • 发散

我们还有另一个处理调色板的函数seaborn.palplot()。 此函数将调色板绘制为水平数组。 我们将在接下来的示例中了解更多关于 seaborn.palplot() 的信息。


定性调色板

定性或分类调色板最适合绘制分类数据。

示例

from matplotlib import pyplot as plt
import seaborn as sb
current_palette = sb.color_palette()
sb.palplot(current_palette)
plt.show()

输出

Colour

默认情况下,我们没有在 color_palette(); 中传递任何参数,我们看到 6 种颜色。 您可以通过将值传递给 n_colors 参数来查看所需的颜色数。 此处,palplot() 用于水平绘制颜色数组。


顺序调色板

序列图适用于表示数据在一个范围内从相对较低值到较高值的分布。

将附加字符"s"附加到传递给颜色参数的颜色将绘制顺序图。

示例

from matplotlib import pyplot as plt
import seaborn as sb
current_palette = sb.color_palette()
sb.palplot(sb.color_palette("Greens"))
plt.show()
grid

注意−在上面的例子中,我们需要将's'附加到参数,如'Greens'。


发散调色板

发散调色板使用两种不同的颜色。 每种颜色代表从公共点到任一方向的值的变化。

假设绘制范围从 -1 到 1 的数据。从 -1 到 0 的值采用一种颜色,从 0 到 +1 的值采用另一种颜色。

默认情况下,值以 0 为中心。 您可以通过传递一个值来使用参数中心来控制它。

示例

from matplotlib import pyplot as plt
import seaborn as sb
current_palette = sb.color_palette()
sb.palplot(sb.color_palette("BrBG", 7))
plt.show()

输出

brown

设置默认调色板

color_palette() 函数有一个名为set_palette() 的同伴函数,它们之间的关系类似于美学章节中介绍的对。set_palette()color_palette() 的参数相同,但默认的 Matplotlib 参数已更改,以便调色板用于所有绘图。

示例

import numpy as np
from matplotlib import pyplot as plt
def sinplot(flip = 1):
   x = np.linspace(0, 14, 100)
   for i in range(1, 5):
      plt.plot(x, np.sin(x + i * .5) * (7 - i) * flip)

import seaborn as sb
sb.set_style("white")
sb.set_palette("husl")
sinplot()
plt.show()

输出

graph

绘制单变量分布

数据的分布是我们在分析数据时需要了解的最重要的事情。 在这里,我们将看到 seaborn 如何帮助我们理解数据的单变量分布。

函数 distplot() 提供了快速查看单变量分布的最便捷方式。 此函数将绘制适合数据核密度估计的直方图。

用法

seaborn.distplot()

参数

下表列出了参数及其说明 −

序号 参数 & 描述
1

data

系列、一维数组或列表

2

bins

hist bins的规范

3

hist

布尔

4

kde

布尔

这些是需要研究的基本且重要的参数。