Seaborn库的定义与核心功能
Seaborn库的定义与核心功能
定义:
Seaborn 是基于 Matplotlib 的 Python 数据可视化库,专注于统计图形的绘制。它提供高级接口,简化了复杂图表的创建流程,支持与 Pandas 数据结构的无缝集成,并内置美观的默认样式和颜色主题,特别适合数据探索与分析。
核心函数与用途
-
基础绘图函数
-
分布图
-
sns.histplot()
:绘制直方图(支持核密度估计叠加)。 -
sns.kdeplot()
:核密度估计图。 -
sns.displot()
:灵活绘制分布图(直方图、KDE、ECDF 等)。
-
-
关系图
-
sns.scatterplot()
:散点图(支持分类变量颜色/大小映射)。 -
sns.lineplot()
:折线图(自动处理误差区间)。
-
-
分类图
-
sns.barplot()
:条形图(显示均值及置信区间)。 -
sns.boxplot()
:箱线图(展示数据分布与离群值)。 -
sns.violinplot()
:小提琴图(结合箱线图与核密度估计)。
-
-
-
高级绘图工具
-
sns.heatmap()
:热力图(用于矩阵数据可视化)。 -
sns.clustermap()
:层次聚类热力图(结合聚类分析)。 -
sns.pairplot()
:散点图矩阵(自动绘制多变量关系)。 -
sns.lmplot()
:回归模型图(绘制线性拟合线及置信区间)。
-
-
分面与网格
-
sns.FacetGrid()
:分面网格(按分类变量拆分多子图)。 -
sns.relplot()
:关系分面图(结合scatterplot
和lineplot
)。 -
sns.catplot()
:分类分面图(统一接口绘制各类分类图)。
-
-
样式与主题控制
-
sns.set_theme()
:设置全局主题(样式、调色板、字体等)。 -
sns.set_palette()
:自定义颜色调色板。 -
sns.set_context()
:调整图表元素尺寸(如线条粗细、标签大小)。
-
-
数据与工具函数
-
sns.load_dataset()
:加载内置示例数据集(如tips
,iris
)。 -
sns.color_palette()
:生成或提取颜色序列。 -
sns.axes_style()
:查看或临时修改坐标轴样式。
-
与 Matplotlib 的协作
Seaborn 可与 Matplotlib 灵活结合,例如:
-
使用
plt.title()
或ax.set_xlabel()
调整图表细节; -
通过
plt.subplots()
创建复杂布局后,用 Seaborn 函数填充子图; -
调用
plt.show()
显示最终图表。
import seaborn as sns
import matplotlib.pyplot as plt# 加载数据
tips = sns.load_dataset("tips")# 绘制分面箱线图
g = sns.catplot(data=tips, x="day", y="total_bill", kind="box", col="smoker")
g.set_titles("Smoker: {col_name}")
plt.show()