【python学习】第三方库之matplotlib的定义、功能、使用场景和代码示例(线图、直方图、散点图)

引言

Matplotlib 是一个 Python 的 2D 绘图库,它可以在各种平台上以各种硬拷贝格式和交互环境生成具有出版品质的图形。通过 Matplotlib,开发者可以仅需要几行代码,便可以生成绘图、直方图、功率谱、条形图、错误图、散点图
Matplotlib 是 John D. Hunter 编写的,其目的是为了替代MATLAB中的绘图功能,因为MATLAB是商业软件,而Matplotlib 是开源

一、安装matplotlib第三方库

如下图所示操作:

在这里插入图片描述

二、Matplotlib的定义

Matplotlib是一个模块化的绘图库,它由几个不同的组件构成,其中最常用的模块是 pyplot,它提供了一个类似 MATLAB 的绘图接口

三、功能

3.1 绘制线图、散点图、条形图、直方图、饼图等

3.2 支持多种硬拷贝格式和交互式环境

3.3 可以轻松定制图形的各种属性,如颜色、线型、字体等

3.4 支持动画制作

3.5 与其他数据处理和科学计算库(如 NumPy、Pandas)紧密集成

四、使用场景

4.1 数据分析和可视化

4.2 科学研究的图表绘制

4.3 教育和演示

4.4 制作高质量的图形用于出版

五、代码示例

5.1 以下是一个简单的 Matplotlib 代码示例,演示如何绘制一条线图

5.1.1 代码

import matplotlib.pyplot as plt
import numpy as np
# 创建数据
x = np.linspace(0, 10, 100)  # 从0到10的100个点
y = np.sin(x)  # 计算每个点的正弦值
# 绘制图形
plt.figure(figsize=(10, 6))  # 设置图形大小
plt.plot(x, y, label='sin(x)', color='blue')  # 绘制线图,并指定标签和颜色
plt.title('Sine Function')  # 设置标题
plt.xlabel('x')  # 设置 x 轴标签
plt.ylabel('sin(x)')  # 设置 y 轴标签
plt.legend()  # 显示图例
plt.grid(True)  # 显示网格
# 显示图形
plt.show()

5.1.2 代码解释

  1. 使用了NumPy来生成数据点
  2. 使用 Matplotlib 的 pyplot 模块来绘制正弦函数的图形
  3. 调用不同的 plt 函数,设置图形的大小、标题、轴标签、图例以及是否显示网格
  4. plt.show()调用将图形显示在屏幕上

5.2 画直方图

5.2.1 代码

import matplotlib.pyplot as plt  # 导入matplotlib的pyplot模块,用于绘图

# 创建一个新的图形,命名为'test',并设置分辨率为每英寸50点
plt.figure('test', dpi=50)  

# 定义一个列表,包含要绘制直方图的数据
data = [1, 1, 1, 2, 2, 2, 3, 3, 4, 5, 5, 6, 4]

# 绘制data列表数据的直方图
# plt.hist()函数将自动计算每个数值的出现次数,并在图中显示
plt.hist(data)

# 显示图形,如果没有这一行,图形将不会在屏幕上显示
plt.show()

5.2.2 代码解释

  1. import matplotlib.pyplot as plt: 这行代码是导入操作,它将Matplotlib库中的pyplot模块导入到当前脚本中,并将其重命名为 plt。这样,在后续代码中就可以使用 plt 来调用pyplot模块提供的绘图函数
  2. plt.figure(‘test’, dpi=50): 这行代码创建了一个新的图形实例,并将其命名为 ‘test’。dpi 参数设置图形的分辨率,这里的值为 50,表示每英寸有 50 个像素点。图形的分辨率越高,生成的图像越清晰,但文件大小也会更大
  3. data = [1, 1, 1, 2, 2, 2, 3, 3, 4, 5, 5, 6, 4]: 这行代码定义了一个名为 data 的列表,其中包含了将要绘制直方图的数据。列表中的每个数字代表一个观测值
  4. plt.hist(data): 这行代码调用了pyplot模块的 hist 函数,它接受一个数据序列,并计算该序列中每个数值的出现次数,然后绘制一个直方图。直方图的 x 轴表示数据值,y 轴表示每个数据值的出现频次
  5. plt.show(): 这行代码是pyplot模块提供的函数,用于显示之前创建的所有图形。在调用此函数之前,虽然图形已经被创建和配置,但它们并不会在屏幕上显示。只有在调用 plt.show() 之后,图形才会被渲染并显示在屏幕上

5.3 画散点图

5.3.1 代码

import matplotlib.pyplot as plt  # 导入matplotlib的pyplot模块,用于绘图
import numpy as np  # 导入numpy库,用于数值计算

# 创建一个新的图形,命名为'test',并设置分辨率为每英寸50点
plt.figure('test', dpi=50)  

# 使用numpy的arange函数创建一个数组,包含从1到19的整数
x = np.arange(1, 20)

# 设置y值与x值相等,这里y是x的简单复制
y = x

# 使用plt.scatter绘制散点图,x和y是散点的坐标
# c='r'设置散点的颜色为红色,marker='o'设置散点的标记为圆形
plt.scatter(x, y, c='r', marker='o')

# 显示图形,如果没有这一行,图形将不会在屏幕上显示
plt.show()

5.3.2 代码解释

  1. import matplotlib.pyplot as plt: 这行代码导入了matplotlib库中的pyplot模块,该模块提供了绘制2D图形的函数。通过导入这个模块,我们可以使用 plt 这个别名来调用pyplot的函数
  2. import numpy as np: 这行代码导入了numpy库,它是一个常用的科学计算库,这里我们用它来生成数值数组
  3. plt.figure(‘test’, dpi=50): 这行代码创建了一个新的图形实例,并将其命名为 ‘test’。dpi 参数设置了图形的分辨率,即每英寸的点数(dots per inch),这里设置为50
  4. x = np.arange(1, 20): 这行代码使用numpyarange函数创建了一个从1到19的数组,这个数组将作为散点图中点的 x 坐标。y = x: 这行代码将 y 设置为 x 的值,因此 y 也包含从1到19的整数,这个数组将作为散点图中点的 y 坐标
  5. plt.scatter(x, y, c=‘r’, marker=‘o’): 这行代码调用scatter函数绘制散点图,其中 x 和 y 是散点的 x 和 y 坐标,c=‘r’ 指定了散点的颜色为红色,marker=‘o’ 指定了散点的标记形状为圆形
  6. plt.show(): 这行代码是pyplot模块提供的函数,用于在屏幕上显示之前创建的所有图形。如果没有这行代码,图形将不会显示。在调用 plt.show() 之后,图形将被渲染并显示在屏幕上

六、总结(思维导图)

在这里插入图片描述

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值