当前课程知识点:计算思维与人工智能基础 > 第三部分:python基础 > 第八章:python生态库 > 8.11第三方库-matplotlib库
下面给大家介绍另一个第三方库
matmatplotlib库
matmatplotlib库是python最著名的绘图库
它提供了一整套和matlab相似的API
十分适合交互式进行制图
而且也可以方便的将它作为绘图控件
嵌入GUI应用程序中
它的文档相当完备
在matmatplotlib网站的Gallery页面中有上百幅的缩略图
那么打开这些缩略图后都会有源代码可供用户复制
稍作修改后使用
那么这个展示地址呢就是我们给的这个
matmatplotlib.sourceforge.net/gallery.html
那么这个地址下我们可以看得到
它的很多的缩略图和源代码
我们如何使用matmatplotlib这个库呢
那我们主要是用在画图
基本的流程有这样七步
第一步就是什么呀
准备数据
在使用之前呢
我们当然要通过import这一条语句呢
把我的matmatplotlib.pyplot把它导进来
把这个模块导进来
那么导进来之后准备数据
我们比如说做的是二维的图的话
那么给了一个假如我们给x的值
然后给一组什么呀
y的值
然后呢我们可以创建一个什么呀
第二步就是我们创建图像
那么创建图像的时候呢
我们要创建一个画布
这个是通过那个figure这个函数plt.figure来去创建
那么它的大小可以制定啊
那么行是多少像素
列是多少像素啊
另外的话我们还可以创建它时
通过add_subplot来去添加它有多少个什么呀
可以是一副画布上可有多个图
那么在这个地方subplot这个方法那就是一行一列
那么当前的目标是第一个
如果你可能是一行放两个的呢
就是一行两列
你当前的目标是1
那么下面一个目标可能是2是这样
那第三步就是作图
那么作图呢可以通过plot的方法
那么里面给上x值y值
那么下面这是可以给什么呀
颜色
它的宽度以及它的什么呀
图标
那么label它可以指定
再下面呢就可以自定义一些图像的属性
那么比如说我们可以设定当前这个图像
可以设定他的什么呀
x轴的限定的长度
那么x轴从1开始到8
y轴的限定是从10开始到30
那么这个指的是什么
ax就是指定的这个图像
作图的这个图像的x轴y轴
那么另外的话整个对象就是画布的属性
我们还可以设置
比如说通过xlabel的方法设置x轴
ylabel来设置什么呀
y轴的文字啊
可以通过这个title这个方法来实现这个我们的图的这个标题啊
标题
最后呢我们可以进行什么呀
图的什么呀
保存和图的什么呀
展示
那么通过savefig给一个指定的路径和文件名的话
它就可以保存
像现在这个就保存在什么呀
当前的目录下
那么给一个文件名它就存一个png文件
要在当前的我们的页面上展示的话
就通过什么呀
show这个方法来进行展示
下面我们再看在jupyter下
看一下这段代码是执行的结果是什么样
那我们看一看在jupyter下
我们刚才的这段代码
我们执行一下
我们可以看得到这个就是我们
蓝颜色的
或者是可以把它
r就是红颜色
那么这是颜色啊
后面的这是线型
颜色线型
咱们线的宽度
我们这个它的图的什么呀
标题
我们再运行一下
可以看的到啊
这就是红色的线型了
这是我们x轴y轴啊
就可以这样的去通过matmatplotlib来去完成一个图的制作
如果我们的这个轴的时候会是
如果有中文的时候呢
我们需要加一句
就是我们在图的这里面需要设定输出文字是中文格式时候
我们加两个方法
那么可以看到一个呢就是我们这个通过
rcParams
那么可以指定我们的输出的字体
那么另外的一个呢
还可以指定我那什么呀
它的轴里面的什么呀
负数
用来正常显示负数的话
我们可以指定这个属性是等于False啊
这个是指定它什么呀
字体
好的我们这样的话我们可以看到
刚才这个图的话啊
我们看它的执行的结果
那么这个这个轴啊
那么这个x轴y轴是汉字就可以显示出来
那么可以看到这个图x轴y轴
那么同样一个图呢
我们可以看哎这两个图为什么不一样呢
是因为我们可以看得到它这个x轴和y轴的范围不一样
所以看起来不一样
那么其实这是一个图
那么我们如果改一下
我们可以看到它是从
值是从10开始到30
y轴的范围
x轴的范围都是都是1到8
我们这个可以把这个图里面的这个可以改一下
那我们可以从它可以改成什么呀
10到30
然后这个可以改到什么呀
1到8
我们在这样的改了它的X轴Y轴的范围
我们再运行一下我们当前这个图的
那么可以看的到我们这两个图是不是就一样了啊
是的
那么除了我们画这个我们的折线图的话
我们还可以画其他的类型的图
比如说有散点图
柱状图等等
那么这个图啊
那如果我们画一个什么呀
散点图的话
我们这个方法呢
它就用到的是什么呀
scatter这个方法
那么xy的值
那么这是这个点的大小
范围
可以200
然后呢
它的颜色啊
那么这个它的形状marker它的形状
然后他的透明度
它们的边缘的颜色以及它的什么呀
我们这个图的标号
是可以设置这些属性
我们可以看这个散点图
画出来的是我们会选的是marker是五角星
五角星
那么这个地方呢
我们可以看这个就是半个
这个可以
这个也没有显示出来
所以我们这个可以让我们的什么呀
y轴的范围再可以大一些
我们从5开始显示
这可以显示到35啊
那么让我们的图
这几个标记都可以看的清楚
那么这个
那么这个里面的x呢
我们也可以把它从0开始
我从0开始
再运行一下啊
那我们这个图标啊都可以是显示出来啊
那么显示的范围的话
我们x轴y轴
x轴y轴的汉字也都是显示出来
那么除了这个我们的这个散点图呢
还有什么呀
柱状图
用柱状图就可以是什么呀
通过这个bar的方法的实现一个柱状图的一个输出啊
那么一样的是有颜色label宽度啊
那么这个这个呢
我们来可以看一下
再运行一下我们可以看
它就出现一个柱状图
当然还有其他的一些图
大家可以自己下去实践一下
另外的话它可以实现一个三维图的输出啊
那我们这个三维图里面的是要用到这个模块啊
这个模块啊
我们要导入啊
mpl_toolkits.mplot3d
这样的一个模块来我们输出一个什么呀
3D图形
那么3D图形那么可以给xy的值
然后呢z是根据x值的变化得到一个值
那么这个输出x,y,z的label啊
那么这个我们可以执行一下
它都输出一个什么呀
三维的这样的一个什么呀
图形
下面我们利用subplot这个方法来绘制多幅图形
首先我们还是通过plt.figure来去创建我们这个画图这个对象
那么也可以在下面呢
再用这个plt.figure(1)
那么就是第一个画板
那么在这个plt下面呢再设置subplot
那么后面这个参数121指的是一行两列组成
当前这个目标区域是1
那就给x1是第一个区域
那么在这个区域下面可以画一个散点图
那么再设置这个区域是第二个区
然后画一个折线图
那再可以通过plt.figure(2)设置第二个画板
那么这个第二块板上画的是一个柱状图
也可以再给他设置标题
还可以再切换通过figure再赋值括号1这个参数
再切换到第一个画板
然后可以设置第一个画板第一个区域的标题
第一个画板第二个区域的标题
然后设置他们之间的间隔和展示
我们看一下
这个用subplot的方法绘制多图形它的结果的展示
那么这就是第一个画板
那么第一个区域
这是第二个区域
这是我们的散点图
折线图
那么这是第二个画板的什么呀
柱状图
另外的话也可以展示一些什么呀
一些简单的这个图像的一些处理
那么通过我们这里面的一个imread
imread这个方法啊
imread这个方法plt下面imread这个方法呢
把一个图片读进来
然后通过imshow方法进行什么呀
展示
那么可以看这个就是我们常做图像处理这个图片进行展示
当然了也可以把它做一些工作
比如说可以简单地一个翻转啊
简单的一个翻转
也可以对它的什么呀
色彩做一个简单的一个什么呀
处理
那么这样子的话
都可以在这个前端进行什么呀
展示
我们看它的亮度就跟刚才不一样啊
色彩也有些(变化)
这个取的取值的范围呢
那么因为我们在img这个里面的是出一个100
那它这里面的颜色会发生一些变化
那么这个就是一个简单的一个图像的一个展示
那么在matplotlib里面还有很多图像啊
可以非常好看
也复杂的图像的展示
请同学们自己去到matplotlib的网站上去学习
好了我们关于这一章的内容
就给大家介绍到这里
-章测试
-章测试
-第一章:python简介
--章测试
-第二章:编码规范
--2.2常量和变量
--章测试
-第三章:数据类型
--章测试
-第四章:基本运算
--4.2比较运算符
--4.3逻辑运算符
--4.4位运算符
--章测试
-第五章:程序控制结构
--5.1顺序结构
--5.2条件结构
--5.3循环结构
--5.4跳转结构
--5.5异常处理
--章测试
-第六章:函数、模块与面向对象
--6.2面向对象
--6.4模块与包
--章测试
-第七章:文件操作
--7.2文件的写入
--章测试
-第八章:python生态库
--章测试
-第九章:TensorFlow基础
--章测试
-第十章:实例分析与实践
--章测试
-第十一章:人工智能在自然语言中的应用
--章测试