Python 基础入门 Day39:Pandas 数据可视化初探

69次阅读
没有评论

共计 1310 个字符,预计需要花费 4 分钟才能阅读完成。

欢迎来到 Python 学习的第 39 天!在前几天的学习中,我们了解了 Pandas 的数据读取、清洗、处理与分析方法。今天我们进入一个非常实用也极具视觉冲击力的部分 —— 使用 Pandas 和 Matplotlib 进行 基础数据可视化


一、为什么要可视化?

数据可视化能帮助我们:

  • 直观理解数据的分布、趋势和规律;
  • 发现潜在的异常值;
  • 提高数据分析报告的表达力和说服力。

Pandas 实际上内置了 Matplotlib 的接口,让我们可以很方便地通过 .plot() 方法实现图表绘制。


二、准备数据

我们使用一个经典的示例数据集 —— 泰坦尼克号乘客信息 ,它包含乘客的年龄、性别、船舱等级、生存情况等。

import pandas as pd

# 载入数据
url = "https://raw.githubusercontent.com/datasciencedojo/datasets/master/titanic.csv"
df = pd.read_csv(url)

# 查看前几行数据
print(df.head())

三、绘图基础:.plot() 方法

Pandas 默认使用 Matplotlib 来绘图,我们可以直接在 Series 或 DataFrame 上调用 .plot() 方法来快速生成图形。


1. 直方图(Histogram)

查看乘客年龄的分布:

df['Age'].plot(kind='hist', bins=20, title='Age Distribution')

🎯 用途 :用于展示数值型数据的分布。


2. 条形图(Bar Plot)

展示不同舱位乘客人数:

df['Pclass'].value_counts().sort_index().plot(kind='bar', title='Number of Passengers by Class')

🎯 用途 :对类别型数据计数后可视化。


3. 饼图(Pie Chart)

查看性别占比:

df['Sex'].value_counts().plot(kind='pie', autopct='%1.1f%%', title='Gender Distribution')

🎯 用途 :用于展示整体比例结构。


4. 折线图(Line Plot)

虽然不常用于这类数据,但可以对年龄与生存人数之间做一个粗略的关系尝试:

df.groupby('Age')['Survived'].sum().plot(kind='line', title='Survivors by Age')

四、提高图表可读性的小技巧

你可以通过以下参数增强图形的表达力:

df['Age'].plot(kind='hist', bins=20, alpha=0.7, color='skyblue', edgecolor='black', grid=True)
  • alpha:透明度
  • color:填充色
  • edgecolor:边框颜色
  • grid:是否显示网格线

五、练习任务

  1. 使用饼图展示“是否生还”的比例。
  2. 绘制不同性别乘客的平均年龄条形图。
  3. 尝试在一个图中绘制多条线(如每个舱位的年龄分布曲线)。

六、小结

今天我们学习了如何用 Pandas 快速实现基础的数据可视化:

  • .plot() 是快速画图的利器;
  • 常见图类型:直方图、条形图、饼图、折线图;
  • 适当调整参数可以提高图表的可读性。
正文完
 0
评论(没有评论)