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()还有一些控制折线图其他外观的参数,本文并没有完全介绍。

相关推荐
A__tao4 小时前
Elasticsearch Mapping 一键生成 Java 实体类(支持嵌套 + 自动过滤注释)
java·python·elasticsearch
研究点啥好呢4 小时前
Github热门项目推荐 | 创建你的像素风格!
c++·python·node.js·github·开源软件
迷藏4944 小时前
**发散创新:基于Rust实现的开源合规权限管理框架设计与实践**在现代软件架构中,**权限控制(RBAC)** 已成为保障
java·开发语言·python·rust·开源
明日清晨4 小时前
python扫码登录dy
开发语言·python
bazhange5 小时前
python如何像matlab一样使用向量化替代for循环
开发语言·python·matlab
人工干智能5 小时前
科普:python中你写的模块找不到了——`ModuleNotFoundError`
服务器·python
unicrom_深圳市由你创科技5 小时前
做虚拟示波器这种实时波形显示的上位机,用什么语言?
c++·python·c#
小敬爱吃饭5 小时前
Ragflow Docker部署及问题解决方案(界面为Welcome to nginx,ragflow上传文件失败,Docker中的ragflow-cpu-1一直重启)
人工智能·python·nginx·docker·语言模型·容器·数据挖掘
宸津-代码粉碎机5 小时前
Spring Boot 4.0虚拟线程实战调优技巧,最大化发挥并发优势
java·人工智能·spring boot·后端·python
知行合一。。。5 小时前
Python--04--数据容器(集合)
python