【技术专题】Matplotlib3 Python 数据可视化 - 初识Matplotlib3

0 阅读3分钟

家好,我是锋哥。最近连载更新《Matplotlib3 Python 数据可视化》技术专题。

image.png

本课程讲解利用python进行数据可视化 科研绘图-Matplotlib,学习Matplotlib图形参数基本设置,绘图参数及主要函数,以及Matplotlib基础绘图,和Matplotlib高级绘图。同时也配套视频教程 《2026版 Matplotlib3 Python 数据可视化 视频教程》

Matplotlib3简介

Matplotlib 是 Python 最流行的数据可视化库之一,广泛应用于科学计算、数据分析、科研绘图、机器学习等领域。

官方主页:matplotlib.org/ 最新版本:3.10

Matplotlib 是 Python 编程语言的 2D 绘图库,由 John Hunter 于 2003 年创建,遵循 PSF 许可证开源协议 [2]。它支持生成出版级质量的静态、动态及交互式图表,覆盖折线图、散点图、柱状图等常见类型,并具备跨平台交互环境与多种硬拷贝格式输出能力。其核心功能通过简洁的代码调用实现,提供坐标轴定制、网格线调整、图例设置等基础绘图配置,且支持通过配置文件或动态修改参数。

我们学习的话,主要通过官方用户指南:matplotlib.org/stable/user…

以及官方demo:matplotlib.org/stable/gall…

安装Matplotlib3库

首先我们新建一个纯净Python项目,选虚拟环境。Python版本3.11。

image.png

新建完项目,在终端Terminal里执行 matplotlib 安装命令,使用清华镜像安装,速度块。

pip install matplotlib -i https://pypi.tuna.tsinghua.edu.cn/simple

我们在安装一个jupyter,主要方便学习的时候,可视化图表显示。

pip install jupyter -i https://pypi.tuna.tsinghua.edu.cn/simple

这样我们把matplotlib库安装好了。

image.png

编写Matplotlib3 HelloWord项目

我们主要通过matplotlib的pyplot绘图工具来实现绘图。

我们先生成x,y轴随机数,然后调用plot方法,最后保存为图片。

import numpy as np
from matplotlib import pyplot as plt
​
# 随机生成数据
x = np.arange(2, 20, 1)
y = (x - 1) ** 3 + 1# 绘图
plt.plot(x, y)
​
# 保存为图片
plt.savefig('test.png')

运行程序,则生成test.png图片,我们打开,一个最简单的二维图表生成了。

image.png

但是这里有个麻烦的地方,每次学习都要图片,再打开查看效果,比较麻烦。有没有直观的方式呢?

当然有,我们使用jupyter。

我们新建一个file文件,名字是helloWorld.ipynb

然后再贴下代码,最后的savefig()方法改成show()方法

import numpy as np
from matplotlib import pyplot as plt
​
# 随机生成数据
x = np.arange(2, 20, 1)
y = (x - 1) ** 3 + 1# 绘图
plt.plot(x, y)
​
# 显示图片
plt.show()

运行下,直接显示报表图形了。非常直观,非常Nice,很适合我们学习用。

image.png

Matplotlib3 图形的组成部分

以下是 Matplotlib 图形的组成部分。

image.png

Matplotlib 图形的组成部分可以类比为一幅画布上的绘画元素,主要分为以下几个核心组件:

  1. 图形 (Figure)
  • 作用:最高层容器,相当于画布或画框。

  • 特点

    • 可包含多个子图(Axes)
    • 控制全局属性:尺寸、分辨率、背景色等
  1. 子图 (Axes)
  • 作用:数据绘制的区域(核心绘图区),每个子图包含完整的坐标轴、标签等。

  • 特点

    • 一个 Figure 可包含多个 Axes(如子图网格)
    • 实际绘图操作在此对象上进行
  1. 坐标轴 (Axis)
  • 作用:定义数据范围并生成刻度(Ticks)和刻度标签。

  • 组成

    • x 轴 (XAxis) 和 y 轴 (YAxis)
    • 刻度线 (Ticks):坐标轴上的标记点
    • 刻度标签 (Tick Labels):刻度对应的数值/文本
  1. 绘图元素 (Artists)
  • 作用:所有可见对象的基类(甚至 Figure、Axes和Axis对象),包括:

    • 数据标记 (Markers):数据点的形状(如 o, s, ^
    • 线条 (Lines):连接数据点的样式(如 -, --, :
    • 文本 (Text):标题、标签等文字
    • 图例 (Legend):说明不同数据系列的含义
    • 网格 (Grid):辅助参考线
    • 注释 (Annotations):箭头和文字说明
  1. 其他关键组件
  • 标题 (Title)
  • 轴标签 (Axis Labels)
  • 颜色条 (Colorbar) :用于解释颜色映射(常见于热力图、等高线图)