[ PROMPT_NODE_27396 ]
seaborn
[ SKILL_DOCUMENTATION ]
# Seaborn 统计可视化
## 概述
Seaborn 是一个用于创建出版级统计图形的 Python 可视化库。使用此工具进行面向数据集的绘图、多变量分析、自动统计估计以及通过最少代码生成复杂的多面板图表。
## 设计理念
Seaborn 遵循以下核心原则:
1. **面向数据集**:直接使用 DataFrame 和命名变量,而非抽象坐标。
2. **语义映射**:自动将数据值转换为视觉属性(颜色、大小、样式)。
3. **统计感知**:内置聚合、误差估计和置信区间计算。
4. **美学默认值**:开箱即用的出版级主题和调色板。
5. **Matplotlib 集成**:在需要时与 Matplotlib 自定义功能完全兼容。
## 快速入门
python
import seaborn as sns
import matplotlib.pyplot as plt
import pandas as pd
# 加载示例数据集
df = sns.load_dataset('tips')
# 创建简单的可视化
sns.scatterplot(data=df, x='total_bill', y='tip', hue='day')
plt.show()
## 核心绘图接口
### 函数接口 (传统)
函数接口提供了按可视化类型组织的专业绘图函数。每个类别都有**轴级 (axes-level)** 函数(绘制到单个轴)和**图级 (figure-level)** 函数(管理整个包含分面的图表)。
**适用场景:**
- 快速探索性分析
- 单一目的的可视化
- 当你需要特定类型的图表时
### 对象接口 (现代)
`seaborn.objects` 接口提供了一种类似于 ggplot2 的声明式、可组合 API。通过链式调用方法来指定数据映射、标记、转换和比例,从而构建可视化。
**适用场景:**
- 复杂的分层可视化
- 当你需要对转换进行细粒度控制时
- 构建自定义图表类型
- 程序化生成图表
python
from seaborn import objects as so
# 声明式语法
(
so.Plot(data=df, x='total_bill', y='tip')
.add(so.Dot(), color='day')
.add(so.Line(), so.PolyFit())
)
## 按类别划分的绘图函数
### 关系图 (变量间的关系)
**适用场景:** 探索两个或多个变量之间的关系
- `scatterplot()` - 将单个观测值显示为点
- `lineplot()` - 显示趋势和变化(自动聚合并计算置信区间)
- `relplot()` - 具有自动分面功能的图级接口
**关键参数