摆盘篇-Day25|摆盘初识:matplotlib 基础,pandas 内置 plot 画图

0 次阅读 2026-10-22 09:34

📖 知识点

1. 为什么要可视化?

一行行数字要费力比较,但一张图(柱状图、折线图)扫一眼就明白。可视化是数据分析的 "摆盘"—— 同样的菜,装盘好看,顾客(读者)更愿意吃、更容易懂。

2. 认识 matplotlib

matplotlib 是 Python 最基础的绘图库。pandas 的 plot 方法底层就调用它。需先安装:

 

pip install matplotlib

 

3. pandas 内置 plot 画图

pandas 的 DataFrame 可以直接 .plot() 画图,最简单:

 

import matplotlib.pyplot as plt
import pandas as pd

# 一份数据
data = {"菜名": ["白菜", "番茄", "土豆", "黄瓜"], "销量": [10, 20, 30, 15]}
df = pd.DataFrame(data)

# 画柱状图(x=菜名,y=销量)
df.plot(x="菜名", y="销量", kind="bar")
# 显示图像
plt.show()

 

df.plot(x="x列", y="y列", kind="图类型"):kind 指定图类型(bar 柱状 /line 折线 /pie 饼图等)。

4. 常用图类型(kind)

 

 

 

kind 值图形适用

"bar"

柱状图对比各类

"line"

折线图看趋势

"pie"

饼图看占比

"hist"

直方图看分布

5. 完整示例(柱状图)

 

import matplotlib.pyplot as plt
import pandas as pd

df = pd.DataFrame({"菜名": ["白菜", "番茄", "土豆", "黄瓜"], "销量": [10, 20, 30, 15]})
df.plot(x="菜名", y="销量", kind="bar", title="各菜销量对比")
plt.show()

 

会弹出一个窗口显示柱状图:横轴是菜名,纵轴是销量,一眼看出土豆销量最高。

⚠️ 易错提醒

  1. 画图前先 pip install matplotlib

  2. .plot() 后要 plt.show() 才会显示图像

  3. 中文标题可能显示为方块,可加 plt.rcParams['font.sans-serif']=['SimHei'] 处理(部分环境需要)

⚔️ Kata 实战任务

任务需求:

  1. 安装并导入 matplotlib 和 pandas

  2. 创建一份 "各菜销量" 数据

  3. 用 df.plot(x="菜名", y="销量", kind="bar") 画柱状图

  4. 用 plt.show() 显示图像

  5. 打印提示,说明这张图表达了什么

参考代码

 

# 先确保已安装:pip install matplotlib
import matplotlib.pyplot as plt
import pandas as pd

# 一份各菜销量数据
df = pd.DataFrame({
    "菜名": ["白菜", "番茄", "土豆", "黄瓜", "茄子"],
    "销量": [10, 20, 30, 15, 25],
})

# 摆盘初识:画柱状图
df.plot(x="菜名", y="销量", kind="bar", title="各菜销量对比")
plt.show()

print("✅ 柱状图已生成!")
print("📊 图中最高的一根是「土豆」(30),销量最高;最低的是「白菜」(10)")

 

运行输出(会弹出一个柱状图窗口 + 终端打印):

 

✅ 柱状图已生成!
📊 图中最高的一根是「土豆」(30),销量最高;最低的是「白菜」(10)

 

💡 观察:弹出的窗口里,横轴是 5 种菜,纵轴是销量,每根柱子的高度一眼可对比。这就是 "装盘上桌"—— 数字变成了直观的图。

🧠 思考题

  1. df.plot() 里的 x、y、kind 分别控制图的什么?

  2. 如果要看 "销量随时间变化" 该选哪种图(bar/line/pie)?为什么?