首页
学习
活动
专区
圈层
工具
发布
社区首页 >专栏 >人工智能之数据分析 Matplotlib:第二章 Pyplot

人工智能之数据分析 Matplotlib:第二章 Pyplot

原创
作者头像
咚咚王
发布2025-11-27 19:20:33
发布2025-11-27 19:20:33
820
举报

人工智能之数据分析 Matplotlib

第二章 Pyplot


前言

pyplotMatplotlib 库中最常用、最便捷的模块,提供了类似 MATLAB 的命令式绘图接口,非常适合快速绘制各种图表。它通过一系列函数自动管理图形(Figure)、坐标轴(Axes)等底层对象,让初学者也能轻松上手。


一、导入方式

通常使用以下方式导入:

代码语言:python
复制
import matplotlib.pyplot as plt

这是官方推荐的标准写法。


二、基本用法示例

1. 绘制简单折线图

代码语言:python
复制
import matplotlib.pyplot as plt

x = [1, 2, 3, 4]
y = [1, 4, 2, 3]

plt.plot(x, y)           # 绘制折线图
plt.title("Simple Line Plot")
plt.xlabel("X axis")
plt.ylabel("Y axis")
plt.show()

2. 多条曲线 & 图例

代码语言:python
复制
plt.plot([1, 2, 3], [1, 4, 9], label='x²')
plt.plot([1, 2, 3], [1, 2, 3], label='x')
plt.legend()  # 显示图例
plt.show()

3. 散点图(scatter)

代码语言:python
复制
plt.scatter([1, 2, 3, 4], [10, 20, 25, 30], color='red')
plt.title("Scatter Plot")
plt.show()

4. 柱状图(bar)

代码语言:python
复制
categories = ['A', 'B', 'C']
values = [3, 7, 5]
plt.bar(categories, values)
plt.title("Bar Chart")
plt.show()

三、常用 pyplot 函数

函数

作用

plt.plot()

绘制折线图或点线图

plt.scatter()

绘制散点图

plt.bar()/plt.barh()

垂直/水平柱状图

plt.hist()

直方图

plt.pie()

饼图

plt.title()

设置图表标题

plt.xlabel()/plt.ylabel()

设置坐标轴标签

plt.xlim()/plt.ylim()

设置坐标轴范围

plt.legend()

显示图例

plt.grid()

显示网格

plt.savefig('file.png')

保存图像到文件

plt.show()

显示图形(在脚本中必需,在 Jupyter 中可省略)


四、在 Jupyter Notebook 中使用

在 Jupyter 中,建议加上魔术命令以实现内联显示

代码语言:python
复制
%matplotlib inline
import matplotlib.pyplot as plt

这样图表会直接嵌入在 notebook 单元格下方,无需弹出新窗口。

如果想交互式操作(如缩放、平移),可使用:%matplotlib widget # 需安装 ipympl: pip install ipympl


五、pyplot 与面向对象 API 的关系

虽然 pyplot 使用方便,但其背后仍是基于 Figure 和 Axes 对象 的面向对象结构。例如:

代码语言:python
复制
# 面向对象写法(更灵活)
fig, ax = plt.subplots()
ax.plot([1, 2, 3], [1, 4, 2])
ax.set_title("OO Style")
plt.show()

对于复杂图表(如多子图、精细控制),推荐使用面向对象方式;对于快速探索性绘图,pyplot 足够高效。


六、小贴士

  • 所有 plt.xxx() 函数都会作用于“当前”坐标轴(current axes)。
  • 每次调用 plt.figure()plt.subplot() 会创建新的图形或子图。
  • 使用 plt.clf() 清空当前图形,plt.close() 关闭图形窗口。

后续

本文主要介绍了Matplotlib的常见库Pyplot的基本操作。之前的python过渡项目部分代码已经上传至gitee,后续会逐步更新。

资料关注

公众号:咚咚王

《Python编程:从入门到实践》

《利用Python进行数据分析》

《算法导论中文第三版》

《概率论与数理统计(第四版) (盛骤) 》

《程序员的数学》

《线性代数应该这样学第3版》

《微积分和数学分析引论》

《(西瓜书)周志华-机器学习》

《TensorFlow机器学习实战指南》

《Sklearn与TensorFlow机器学习实用指南》

《模式识别(第四版)》

《深度学习 deep learning》伊恩·古德费洛著 花书

《Python深度学习第二版(中文版)【纯文本】 (登封大数据 (Francois Choliet)) (Z-Library)》

《深入浅出神经网络与深度学习+(迈克尔·尼尔森(Michael+Nielsen)》

《自然语言处理综论 第2版》

《Natural-Language-Processing-with-PyTorch》

《计算机视觉-算法与应用(中文版)》

《Learning OpenCV 4》

《AIGC:智能创作时代》杜雨+&+张孜铭

《AIGC原理与实践:零基础学大语言模型、扩散模型和多模态模型》

《从零构建大语言模型(中文版)》

《实战AI大模型》

《AI 3.0》

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

原创声明:本文系作者授权腾讯云开发者社区发表,未经许可,不得转载。

如有侵权,请联系 cloudcommunity@tencent.com 删除。

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 人工智能之数据分析 Matplotlib
  • 前言
  • 一、导入方式
  • 二、基本用法示例
    • 1. 绘制简单折线图
    • 2. 多条曲线 & 图例
    • 3. 散点图(scatter)
    • 4. 柱状图(bar)
  • 三、常用 pyplot 函数
  • 四、在 Jupyter Notebook 中使用
  • 五、pyplot 与面向对象 API 的关系
  • 六、小贴士
  • 后续
  • 资料关注
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档