Python中matplotlib库的使用1

1 matplotlib库简介

matplotlib是一个数学绘图库,可以将数据通过图形的方式显示出来,也就是数据可视化。

2 matplotlib库的安装

2.1 打开cmd窗口

点击键盘的"Win"+"R"键,在弹出的"运行"对话框的"打开"栏中输入"cmd",之后点击"确定"按键,打开cmd窗口,如图1所示。

图1 打开cmd窗口

2.2 通过pip install指令安装

在cmd窗口的命令行中使用pip intall指令安装matplotlib库,如图2所示。

图2 安装matplotlib库

2.3 通过pip list指令查看

最后,在cmd窗口中通过pip list指令查看matplotlib是否安装成功,如图3所示。

图3 查看matplotlib库是否安装成功

3 通过matplotlib库简单画线

通过matplotlib库画线的代码如图4所示。

图4 通过matplotlib库画线的代码

其中,第1行代码通过import...as语句将matplotlib库中的pyplot模块导入并命名为plt,第2行代码定义了一个包含5个元素的列表,该列表即为要通过画线来表示的数据;第3行代码调用pyplot模块中的plot()方法进行画图,该方法的参数即为对应的数据;第4行代码调用pyplot模块的show()方法显示画出来的数据图。以上代码运行的效果如图5所示。

图5 简单折线图

从图5中可以看出,画出来的折线图的横坐标表示列表squares的索引值,纵坐标表示该索引值对应的元素值。

4 折线图的美化

可以通过代码实现图5简单折线图的美化。

4.1 设置折线的粗细

通过pyplot模块中的plot()方法,可以设置折线的粗细程度,代码如图6所示。

图6 设置折线的粗细

plot()方法的第一个参数表示所画折线对应的数据,linewidth参数表示折线的粗细,将该参数设置为10的效果如图7所示。

图7 设置了粗细程度的折线图

4.2 设置图的标题以及横纵坐标的标签

通过图8所示的代码可以设置折线图的标题以及横纵坐标的标签。

图8 设置图的标题以及横纵坐标的标签

其中,第3行中title()方法的作用是设置图的标题,该方法的第一个参数表示标题内容,fontsize参数表示显示内容字体的大小,fontproperties指定了显示内容使用的字体,"SimHei"表示黑体,"SimSun"表示宋体;第4行的xlabel()和第5行的ylabel()方法的作用分别是设置横坐标的标签和纵坐标的标签,这两个方法的参数与title()方法的参数作用相同。设置之后的折线图如图9所示。

图9 设置了标题以及横纵坐标的标签的折线图

注意1 以上3行代码的位置可以在plot()方法之前,也可以在plot()方法之后,但是一定要在show()方法之前。

4.3 设置横纵坐标轴的外观

通过pyplot模块中的tick_params()方法,可以设置横纵坐标轴的外观,代码如图10所示。

图10 设置横纵坐标轴的外观

其中,tick_params()方法的axis参数指定了设置横坐标的外观还是设置纵坐标的外观,该参数值是both时,表示两个坐标外观都设置;labelsize参数表示坐标轴刻度的大小;colors表示坐标轴刻度的颜色,'r'表示红色。设置之后的折线图如图11所示。

图11 设置了横纵坐标轴外观的折线图

注意2 以上提到的matplotlib库的pyplot模块中的title()、xlabel()、ylabel()和tick_params()还有一些控制折线图其他外观的参数,本文并没有完全介绍。

相关推荐
清水白石0089 小时前
《为什么说 deque 是 Python 滑动窗口的“隐藏神器”?深入解析双端队列的高效之道》
开发语言·python
kjkdd9 小时前
5. LangChain设计理念和发展历程
python·语言模型·langchain·ai编程
摘星编程9 小时前
CANN ops-nn 激活函数算子全解析:从ReLU到GELU的演进与实现
python
love530love9 小时前
【高阶编译】Windows 环境下强制编译 Flash Attention:绕过 CUDA 版本不匹配高阶指南
人工智能·windows·python·flash_attn·flash-attn·flash-attention·定制编译
DeniuHe9 小时前
Pytorch中的众数
人工智能·pytorch·python
新缸中之脑9 小时前
开发AI代理必备的8个Python 库
开发语言·人工智能·python
WKP94189 小时前
照片生成心形工具【免费】【下载即可使用】
python
Java后端的Ai之路9 小时前
【Python 教程14】- 网络编程
网络·python·php
郝学胜-神的一滴10 小时前
Python 列表 vs 数组:深入解析与最佳选择指南
开发语言·python·程序人生
ZH154558913110 小时前
Flutter for OpenHarmony Python学习助手实战:机器学习算法实现的实现
python·学习·flutter