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

相关推荐
SamChan906 分钟前
用Python+Requests批量翻译PDF:从脚本到调度
后端·python·microsoft·ai·pdf·机器翻译
草莓熊Lotso7 分钟前
【LangChain】核心技术:嵌入模型与向量存储完全指南
服务器·网络·python·langchain
leisoo80978 小时前
100GBA股股票数据怎么存ClickHouseRedisMySQLJSON完整对比
大数据·linux·服务器·开发语言·python
WangYan20228 小时前
基于XGBoost与AI的生态—地学多源数据建模:植被与土地利用识别、土壤碳氮空间预测、生物多样性驱动机制、土壤微生物功能预测、生态退化与风险识别
python·机器学习·xgboost
金銀銅鐵10 小时前
[Python] 借助 turtle 逐字展示唐诗《金缕衣》
python
Python大数据分析@12 小时前
使用大模型MCP采集数据,爬虫已经无门槛
python·网络爬虫
quantdash_cc13 小时前
告别自建 Requests/BS4 网页爬虫:基于 QuantDash 搭建零维保的高性能量化行情流水线
开发语言·爬虫·python·pandas·量化·quantdash
65岁退休Coder13 小时前
LangChain v1.3.4 笔记 - 07 补充:链式调用 LCEL
后端·python·langchain
卷无止境13 小时前
FastAPI 部署在 Nginx 后面到底该怎么配
后端·python
半亩码田13 小时前
C#转Python第3.1篇:Python 的 class 没有访问修饰符?面向对象的另一条路
开发语言·python·c#