1、核心原理讲解

使用matplotlib绘图的原理,主要就是理解figure(画布)、axes(坐标系)、axis(坐标轴)三者之间的关系。

张三的画板

matplotlib绘图

2、matplotlib库的安装与导入
1)安装
pip install matplotlib
2)导入相关库
现在你不需要关注下面代码具体是什么意思,有一个主观印象即可。我将会在以后的文章中,给大家一一介绍你不懂的哪些参数。
import numpy as np import pandas as pd import matplotlib as mpl import matplotlib.pyplot as plt # 排除警告信息 import warnings warnings.filterwarnings("ignore") # 打印版本信息 display(np.__version__) display(pd.__version__) display(mpl.__version__) # matplotlib画图常见参数设置 mpl.rcParams["font.family"] = "SimHei" # 设置字体 mpl.rcParams["axes.unicode_minus"]=False # 用来正常显示负号 plt.rcParams['font.sans-serif']=['SimHei'] # 用来正常显示中文标签 # 嵌入式显示图形 %matplotlib inline
3、创建figure(画布)的两种方式
1)绘制一个最简单的折线图
import matplotlib as mpl import matplotlib.pyplot as plt x = [1,3,5,7] y = [4,9,6,8] plt.plot(x,y) plt.show()
2)创建figure(画布)的两种方式
- 隐式创建
- 显示创建
① 隐式创建figure对象
② 隐式创建figure对象存在的问题
③ 显示创建figure对象:以后的文章会详细讲述布局设置
# 手动创建一个figure对象 figure = plt.figure() # 获取每个位置的axes对象 axes1 = figure.add_subplot(2,1,1) axes2 = figure.add_subplot(2,1,2)
figure = plt.figure() axes1 = figure.add_subplot(2,1,1) axes2 = figure.add_subplot(2,1,2) axes1.plot([1,3,5,7],[4,9,6,8]) axes2.plot([1,2,4,5],[8,4,6,2]) figure.show()
4、完整的绘图步骤
① 导库
import matplotlib as mpl import matplotlib.pyplot as plt
② 创建figure画布对象
如果绘制一个简单的小图形,我们可以不设置figure对象,使用默认创建的figure对象, 当然我们也可以显示创建figure对象。 如果一张figure画布上,需要绘制多个图形。那么就必须显示的创建figure对象,然后 得到每个位置上的axes对象,进行对应位置上的图形绘制。
③ 根据figure对象进行布局设置
1*1 1*2 2*1 2*2 ...
④ 获取对应位置的axes坐标系对象
figure = plt.figure() axes1 = figure.add_subplot(2,1,1) axes2 = figure.add_subplot(2,1,1)
⑤ 调用axes对象,进行对应位置的图形绘制
这一步,是我们传入数据,进行绘图的一步。对于图形的一些细节设置,都可以在这一步进行。
⑥ 显示图形
plt.show()或figure.show() 如果在pycharm中绘图的话,必须要加这句代码,才能显示。如果在notebook中进行绘图, 可以不用加这句代码,而是自动显示。
5、绘图技巧(细节设置)
* figure 画布 * axes 坐标系,一个画布上可以有多个坐标系 * axis 坐标轴,一个坐标系中可以有多个坐标轴,一般都是二维平面坐标系,或者三维立体坐标系 * title 标题 * legend 图例 * grid 背景网格 * tick 刻度 * axis label 坐标轴名称 * tick label 刻度名称 * major tick label 主刻度标签 * minor tick label 副刻度标签 * line 线 * style 线条样式 * marker 点标记 * font 字体相关
通过对matplotlib绘图的原理,有所了解之后,我们需要学习的就是常见的matplotlib绘图技巧,常见的绘图技巧如上所示,这些绘图技巧都能够很好的帮助我们画出更美观、更直观的图形。下一节,我将会讲述matplotlib绘图技巧(千万不要错过)。
发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/206931.html原文链接:https://javaforall.net
