Python 基础入门 Day17

欢迎来到 Python 基础入门 Day17!昨天,我们学习了 matplotlib 的基础知识,并使用它绘制了折线图、柱状图和饼图等基本图表。今天,我们将学习更高级的数据可视化库 Seaborn。它建立在 matplotlib 之上,提供了更美观和易用的接口,非常适合统计图表的绘制。


目录

  1. 什么是 Seaborn?
  2. 安装和导入 Seaborn
  3. 基本用法:绘制统计图表
  4. 数据集与 Seaborn 集成
  5. 高级绘图:分布图与分类图
  6. 自定义图表样式
  7. 小结与练习

一、什么是 Seaborn?

Seaborn 是一个高级 Python 可视化库,特别适合处理带有统计属性的数据。相比 matplotlib,它的优点包括:

  • 更优雅的默认样式和调色板。
  • 与 Pandas DataFrame 无缝集成。
  • 支持复杂的多变量数据可视化。
  • 内置许多高级统计图表类型。

二、安装和导入 Seaborn

2.1 安装

你可以通过 pip 安装 Seaborn:

pip install seaborn

2.2 导入

通常使用以下方式导入 Seaborn,同时搭配 Pandas 和 Matplotlib 使用:

import seaborn as sns import matplotlib.pyplot as plt import pandas as pd


三、基本用法:绘制统计图表

3.1 折线图

Seaborn 的 lineplot 用于绘制趋势线:

import seaborn as sns import matplotlib.pyplot as plt # 数据 x = [1, 2, 3, 4, 5] y = [2, 3, 5, 7, 11] # 绘制折线图 sns.lineplot(x=x, y=y) # 添加标题 plt.title("Seaborn Lineplot") plt.show()

3.2 散点图

scatterplot 可以清晰地展示点的分布情况:

# 数据 x = [1, 2, 3, 4, 5] y = [2, 3, 5, 7, 11] # 绘制散点图 sns.scatterplot(x=x, y=y) plt.title("Seaborn Scatterplot") plt.show()


四、数据集与 Seaborn 集成

Seaborn 支持直接处理 Pandas 的 DataFrame,非常适合用来绘制基于真实数据集的统计图表。

4.1 使用示例数据集

Seaborn 提供了一些内置数据集,例如 tips(餐馆小费数据):

# 加载内置数据集 tips = sns.load_dataset("tips") # 查看数据集 print(tips.head())

4.2 基于数据集的绘图

绘制小费数据集中消费金额的分布:

sns.histplot(data=tips, x="total_bill", kde=True) plt.title("Distribution of Total Bill") plt.show()


五、高级绘图:分布图与分类图

5.1 分布图

Seaborn 的分布图可以同时显示数据分布和密度曲线:

sns.displot(data=tips, x="total_bill", kde=True) plt.title("Total Bill Distribution") plt.show()

5.2 分类图

分类图可以帮助比较不同类别之间的关系,例如消费金额与用餐时间:

sns.boxplot(data=tips, x="time", y="total_bill") plt.title("Total Bill by Time") plt.show()

5.3 散点图矩阵

pairplot 是一种多变量分析的强大工具:

sns.pairplot(data=tips, hue="sex") plt.show()


六、自定义图表样式

Seaborn 提供了多种默认样式,可以让图表更美观:

# 设置样式 sns.set_theme(style="darkgrid") # 绘制图表 sns.histplot(data=tips, x="total_bill", kde=True) plt.title("Styled Distribution") plt.show()

你可以使用以下样式:

  • darkgrid
  • whitegrid
  • dark
  • white
  • ticks

七、小结与练习

今天,我们学习了 Seaborn 的基础知识,并探索了分布图、分类图和多变量图表。Seaborn 的强大之处在于它可以与 Pandas 数据集无缝集成,并快速生成统计图表。

今日练习题:

  1. 使用 Seaborn 内置的 tips 数据集,绘制消费金额随人数变化的散点图。
  2. 使用分类图比较用餐时间与小费金额之间的关系。
  3. 选择一个你自己的数据集,尝试使用 pairplot 分析变量之间的相关性。

下一节预告:在 Day18 中,我们将学习如何结合 matplotlibseaborn,生成更高级和自定义的可视化效果。敬请期待!


希望你喜欢今天的内容!如果有任何问题或建议,欢迎随时交流 😊。

Comments

No comments yet. Why don’t you start the discussion?

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注