- Seaborn教程
- Seaborn主页
- Seaborn简介
- Seaborn环境设置
- 导入数据集和库
- Seaborn图形美学
- Seaborn调色板
- Seaborn直方图
- Seaborn核密度估计
- 可视化成对关系
- Seaborn绘制分类数据
- 观测值的分布
- Seaborn统计估计
- Seaborn绘制宽格式数据
- 多面板分类图
- Seaborn线性关系
- Seaborn Facet Grid
- Seaborn Pair Grid
- 函数参考
- Seaborn函数参考
- Seaborn有用资源
- Seaborn快速指南
- Seaborn有用资源
- Seaborn讨论
Seaborn调色板
在可视化中,颜色比任何其他方面都起着更重要的作用。有效使用颜色可以为图表增加更多价值。调色板是指画家用来排列和混合颜料的平面。
构建调色板
Seaborn提供了一个名为color_palette()的函数,可用于为图表着色并增加其美学价值。
用法
seaborn.color_palette(palette = None, n_colors = None, desat = None)
参数
下表列出了构建调色板的参数:
序号 | 调色板及描述 |
---|---|
1 | n_colors 调色板中的颜色数量。如果为None,则默认值取决于调色板的指定方式。默认值为n_colors为6种颜色。 |
2 | desat 使每种颜色去饱和的比例。 |
返回值
返回值是指RGB元组列表。以下是现成的Seaborn调色板:
- 深色(Deep)
- 柔和(Muted)
- 亮色(Bright)
- 淡色(Pastel)
- 暗色(Dark)
- 色盲友好(Colorblind)
除此之外,还可以生成新的调色板。
在不知道数据集特征的情况下,很难决定应该为给定数据集使用哪个调色板。考虑到这一点,我们将对使用color_palette()的不同方法进行分类:
- 定性(qualitative)
- 顺序(sequential)
- 差异(diverging)
我们还有另一个函数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()
输出
我们没有在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()
注意:我们需要在参数中附加“s”,例如上述示例中的“Greens”。
差异调色板
差异调色板使用两种不同的颜色。每种颜色代表从一个共同点向任一方向变化的值。
假设绘制范围从-1到1的数据。从-1到0的值采用一种颜色,从0到+1的值采用另一种颜色。
默认情况下,值以零为中心。可以通过传递值来使用center参数进行控制。
示例
from matplotlib import pyplot as plt import seaborn as sb current_palette = sb.color_palette() sb.palplot(sb.color_palette("BrBG", 7)) plt.show()
输出
设置默认调色板
函数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()
输出
绘制单变量分布
在分析数据时,首先需要了解数据的分布。在这里,我们将了解Seaborn如何帮助我们理解数据的单变量分布。
函数distplot()提供了快速查看单变量分布的最便捷方法。此函数将绘制一个拟合数据核密度估计的直方图。
用法
seaborn.distplot()
参数
下表列出了参数及其说明:
序号 | 参数及说明 |
---|---|
1 | data 序列、一维数组或列表 |
2 | bins 直方图bin的规范 |
3 | hist 布尔值 |
4 | kde 布尔值 |
这些是需要关注的基本且重要的参数。