Python 数据分析——Matplotlib相关知识

第一章 Matplotlib相关知识 —— 认识Matplotlib

文章目录

  • Python 数据分析——Matplotlib相关知识
  • 前言
  • 一、Matplotlib安装
  • 二、使用步骤
  • 三、关于Figure的组成
  • 四、两种最常用的绘图
  • 五、通用模板
  • 六、参考

前言

主要写一下关于Python数据分析中关于matplotlib的一些具体使用

一、Matplotlib安装

简介: 具体可以查看Matplotlib官方文档 我们只需了解Matplotlib是Python的一种2D绘图库,可以绘制所需的散点图、柱状图、条形图等等动静、交互的图表
安装: 两种方式

# 使用pip
pip install matplotlib
# 使用conda
conda install matplotlib


验证: 进入Python输入import matplotlib,若无报错即成功

二、使用步骤

简单例子

代码如下(示例):

# 导入库
import matplotlib.pyplot as plt
import matplotlib as mpl
# 绘制一个简单图标
fig, ax = plt.subplots()  # 创建一个包含一个axes的figure
ax.plot([1, 2, 3, 4], [1, 4, 2, 3]);  # 绘制图像
# 或简单的写
line =plt.plot([1, 2, 3, 4], [1, 4, 2, 3])

python matplotlib官方文档 python的matplotlib_数据分析

三、关于Figure的组成

可以参考官方文档提供的图

  • Figure:顶层级,用来容纳所有绘图元素
  • Axes:matplotlib宇宙的核心,容纳了大量元素用来构造一幅幅子图,一个figure可以由一个或多个子图组成
  • Axis:axes的下属层级,用于处理所有和坐标轴,网格有关的元素
  • Tick:axis的下属层级,用来处理所有和刻度有关的元素

四、两种最常用的绘图

matplotlib提供了两种最常用的绘图

  • 显式创建figure和axes,在上面调用绘图方法,也被称为OO模式(object-oriented style)
x = np.linspace(0, 2, 50)  # 在(0,2)之间生成均匀的点

fig, ax = plt.subplots(figsize=(5, 2.7),layout='constrained')
# 绘制三条不同的线
ax.plot(x, x, label='linear')  
ax.plot(x, x**2, label='quadratic')  
ax.plot(x, x**3, label='cubic')  

ax.set_xlabel('x label')  # 横坐标标签
ax.set_ylabel('y label')  # 纵坐标标签
ax.set_title("Simple Plot")  # 图标题
ax.legend();

python matplotlib官方文档 python的matplotlib_python_02

  • 依赖pyplot自动创建figure和axes,并绘图
x = np.linspace(0, 2, 50) 

fig, ax = plt.subplots(figsize=(5, 2.7),layout='constrained')
plt.plot(x, x, label='linear')  
plt.plot(x, x**2, label='quadratic') 
plt.plot(x, x**3, label='cubic')
plt.xlabel('x label')
plt.ylabel('y label')
plt.title("Simple Plot")
plt.legend();

结果一致:

python matplotlib官方文档 python的matplotlib_python_03

五、通用模板

Matplotlib绘图的主要基本步骤:

1. 准备数据
2. 设置绘图样式,这一步并非必须
3. 定义布局
4. 绘制图像
5. 添加标签、文字和图例

参考Matplotlib基本用法的官方文档可以总结出上述所说的两种绘图方式模板

  • OO 模式绘图模板
# step1 准备数据
x = np.linspace(0, 2, 100)
y = x**2

# step2 设置绘图样式
mpl.rc('lines', linewidth=4, linestyle='-.')

# step3 定义布局
fig, ax = plt.subplots()  

# step4 绘制图像
ax.plot(x, y, label='linear')  

# step5 添加标签,文字和图例
ax.set_xlabel('x label') 
ax.set_ylabel('y label') 
ax.set_title("Simple Plot")  
ax.legend() ;
  • pyplot 绘图模板
# step1 准备数据
x = np.linspace(0, 2, 100)
y = x**2

# step2 设置绘图样式
mpl.rc('lines', linewidth=4, linestyle='-.')

# step3 绘制图像
plt.plot(x, y, label='linear')  

# step4 添加标签,文字和图例
plt.xlabel('x label') 
plt.ylabel('y label') 
plt.title("Simple Plot")  
plt.legend() ;

六、参考

本次主要参考学习了Datawhale数据可视化的Matplotlib教程以及Matplotlib的官方文档