Python基础自学(第八章-Matplotlib可视化模块)

第一部分:Matplotlib模块的简介

该模块是Python提供的一个第三方数据可视化模块,它有以下优点:
1:丰富的代码示例
2:使用Tex语法显示公式
3:精准的图像控制
4:高质量的图像输出
其中该模块的官方文档地址为:Matplotlib模块文档官网地址

使用之前先检查以下当前版本:
在这里插入图片描述
如果版本跟不上的话可以直接在命令行更新:
pip install matplotlib -U

第二部分:基于函数的可视化操作

使用前导入相应模块:
在这里插入图片描述

  • 函数plt.plot()的使用
    在这里插入图片描述
    其中plt.plot()方法的使用方式如下:
    plt.plot(x,y,format_str),其中x和y表示x轴和y轴,后面的参数代表输出格式,x和y通常等长的列表或者一维数组,例如下面这个例子:(上图是指定其中一个参数了,没有指定另一个,默认是让另一个和指定的一样)
    在这里插入图片描述
    使用格式化字符后的效果,那么格式化的字符串入下表所示:
    颜色控制符
字符 颜色
‘b’ 蓝色 blue
‘g’ 绿色 green
‘r’ 红色 red
'c 青色 cyan
‘m’ 品红 magenta
‘y’ 黄色 yellow
‘k’ 黑色 black
‘w’ 白色 white

形状控制符

字符 类型 字符 类型
‘-’ 实线 ‘–’ 虚线
‘-.’ 虚点线 ‘:’ 点线
‘.’ ‘,’ 像素点
‘o’ 圆点 ‘v’ 下三角
‘^’ 上三角 ‘<’ 左三角
‘>’ 右三角 ‘1’ 下三叉点
‘2’ 上三叉点 ‘3’ 左三叉点
‘4’ 右三叉点 ‘s’ 正方点
‘p’ 五角点 ‘*’ 星形点
‘h’ 六边形点1 ‘H’ 六边形点2
‘+’ 加号点 ‘x’ 乘号点
‘D’ 实心菱形点 ‘d’ 瘦菱形点

我们现在综合使用以下上面两个表东西,例如使用红色+圆点的组合:
在这里插入图片描述
除了用上面表格来修改输出格式外,还可以通过修改linewidth和color参数改变线的宽度和颜色:
在这里插入图片描述

  • 使用plt.axis()函数修改图形的坐标轴显示范围
    函数格式如下:
    plt.axis([xmin,xmax,ymin,ymax]),其中参数见名知义,例如我们绘制一个下面这样的图:
    在这里插入图片描述
  • 同时绘制多条曲线
    利用这个plt.plot()函数还可以同时绘制多条不同的曲线,例如我们希望把一个数的平方和立方还有原数在一个范围内显示:
    在这里插入图片描述
    当然这些参数也可以分开来写,统一显示也可以达到相同的效果(原因是调用plt.show()方法之前,所有的图都是绘制在一个图上的):
    在这里插入图片描述
  • 图和子图
    通过调用plt.figure(num)函数可以指定绘图操作作用于哪个图上,其中num代表作用图的编号,默认是1,如果省略该参数,那么之后的绘图操作就会在当前最高编号加1的新图进行绘制,例如下面这个例子:
    在这里插入图片描述
    在这里插入图片描述
    子图的生成,同一张图可以分成多个子图进行绘制,我们利用plt.subplot()函数来将一张图切分成多个子图,例如下面这个例子:
    plt.subplot(numrow,numclos,fignum)其中三个参数分别是子图行数、列数、对应的图
    例如我们绘制一个2*1的图:
    在这里插入图片描述

第三部分:基于对象的可视化操作

在该模块中,figure对象是最高级的对象。通过调用plt.figure()函数可以创建一个figure对象,让后用这个对象调用.add_axes()方法可以向图中添加Axes对象,这个axes对象是一个可以进行图像绘制的对象,用它调用.plot()方法是相当于plt.plot()方法的,例如下面这个例子:
在这里插入图片描述
我们还可以把上面那个子图例子重新使用axes对象生成一遍,因为对于每个子图而言都是一个axes对象,那么可以使用plt.subplots()函数来得到figure对象和子图对应的axes对象数组,它的形式为:
fig,axes=plt.subplots(m,n),其中m是子图行数,n是列数
在这里插入图片描述

第四部分:图像中的文本处理

当数据可视化之后,我们希望能在这些图像进行一些标注,以便我们更好的理解和观看,该模块就提供了这样的文本处理方法,常用的方法和函数如下表所示:

函数 方法 作用
plt.text() axes.text() 在指定位置添加文本
plt.xlabel() axes.xlabel() 添加x轴标题
plt.ylabel() axes.ylabel() 添加y轴标题
plt.title() axes.title() 添加标题
plt.suptitle() axes.suptitle() 整张图的标题
plt.anotate() axes.anotate() 添加注释

Matplotlib支持使用LaTex语法书写并显示数学公式,例如下图
在这里插入图片描述
在这里插入图片描述
可以看出$之间的部分被解释成了数学公式,一些常用的LaTex数学公式格式如下:

  • 使用"_“和”^"来分别产生上下标
    在这里插入图片描述
    在这里插入图片描述
  • 使用\frac{}{}形式产生分数,例如:
    在这里插入图片描述
    在这里插入图片描述
  • 让括号和内容一样大,使用\left和\right,例如:
    在这里插入图片描述
  • 使用\sqrt[]{}的形式来产生根号,例如:
    在这里插入图片描述
    在这里插入图片描述

第五部分:基于三角函数的可视化

首先绘制一个正弦和余弦三角函数:
在这里插入图片描述
将x轴的刻度转化为圆周率表示法,这样就显得不那么奇怪:
在这里插入图片描述
接着我们进一步转化,将数字变成圆周率的符号Π:
在这里插入图片描述
最后我们通过plt.gca()函数得到Axes对象,通过这个对象对坐标轴进行平移得到我们熟悉的三角函数图:
在这里插入图片描述
然后我们可以通过一个函数来标记并区分正弦和余弦函数:
在这里插入图片描述
接下来我们还可以给关键的交点出标出信息:
在这里插入图片描述
我们还可以给指定的区域进行上色:
在这里插入图片描述
最后可以改变图像的输出风格:
在这里插入图片描述

python的基础就学到这里了,因为马上要实习了,出去工作还是用java的,所以我要开始取复习并且深入学习java了。不然我怕工作没人要啊

猜你喜欢

转载自blog.csdn.net/weixin_42341232/article/details/90759424
今日推荐