Python Matplotlib 库使用基本指南

简介

Matplotlib 是一个广泛使用的 Python 数据可视化库,它可以创建各种类型的图表、图形和可视化效果。无论是简单的折线图还是复杂的热力图,Matplotlib 提供了丰富的功能来满足我们的数据可视化需求。本指南将详细介绍如何安装、基本绘图函数以及常见图表类型的绘制方法。

安装 Matplotlib

使用以下命令可以通过 pip 安装 Matplotlib 库:

python 复制代码
pip install matplotlib

导入 Matplotlib

在代码中导入 Matplotlib:

python 复制代码
import matplotlib.pyplot as plt

使用示例

  1. 绘制折线图
python 复制代码
import matplotlib.pyplot as plt

x = [1, 2, 3, 4, 5]
y = [5, 7, 2, 8, 4]

plt.plot(x, y, marker='o')
plt.xlabel('X轴标签')
plt.ylabel('Y轴标签')
plt.title('折线图示例')
plt.show()

运行脚本,绘制的图像如下图:

折线图成功绘制了出来,但是中文无法正常显示,我们可以在代码中加上如下设置,即可正常显示中文字符:

python 复制代码
plt.rcParams['font.sans-serif'] = ['SimHei'] # 步骤一(替换sans-serif字体)
plt.rcParams['axes.unicode_minus'] = False  # 步骤二(解决坐标轴负数的负号显示问题)

修改设置后,绘制的图形如下:

  1. 绘制散点图
python 复制代码
x = [1, 2, 3, 4, 5]
y = [5, 7, 2, 8, 4]

plt.scatter(x, y, color='red', marker='o')
plt.xlabel('X轴标签')
plt.ylabel('Y轴标签')
plt.title('散点图示例')
plt.show()

绘制的图像如下:

  1. 绘制条形图:
python 复制代码
categories = ['A', 'B', 'C', 'D']
values = [20, 45, 30, 15]

plt.bar(categories, values, color='blue')
plt.xlabel('类别')
plt.ylabel('值')
plt.title('条形图示例')
plt.show()

绘制的图像如下:

  1. 绘制饼图:
python 复制代码
sizes = [30, 40, 20, 10]
labels = ['A', 'B', 'C', 'D']

plt.pie(sizes, labels=labels, autopct='%1.1f%%', colors=['red', 'green', 'blue', 'yellow'])
plt.title('饼图示例')
plt.show()

绘制的图像如下:

  1. 绘制直方图
python 复制代码
data = [5, 7, 2, 8, 4, 5, 7, 8, 6, 4, 5]

plt.hist(data, bins=10, color='purple', alpha=0.7)
plt.xlabel('值')
plt.ylabel('频率')
plt.title('直方图示例')
plt.show()

绘制的图像如下:

注意事项

  • 可以使用参数来自定义图形的样式,如线条颜色、点的样式等。
  • 使用 xlabel 和 ylabel 来添加轴标签,使用 title 来添加标题。
  • 通过 legend 来添加图例,通过annotate 来添加注释。

总结

通过本教程,我们学习了使用 Matplotlib 创建各种类型的图表和图形。Matplotlib 提供了丰富的函数和选项,以满足不同的数据可视化需求。从简单的折线图到复杂的三维图形,Matplotlib 是一个强大的工具,可以帮助我们将数据变得更加直观和易于理解。

最后感谢每一个认真阅读我文章的人,礼尚往来总是要有的,虽然不是什么很值钱的东西,如果你用得到的话可以直接拿走:

这些资料,对于【软件测试】的朋友来说应该是最全面最完整的备战仓库,这个仓库也陪伴上万个测试工程师们走过最艰难的路程,希望也能帮助到你!

相关推荐
2601_9679873728 分钟前
Sqlite参考手册
数据库·python·sqlite·api·教程
用户019027581611 小时前
A 股到价提醒机器人:AlphaFeed + 飞书/钉钉 Webhook
python
特立独行的猫A1 小时前
Ionic + 仓颉语言的 cj-tauri 开发框架实战:开发精美移动端 APP
java·后端·python
高洁012 小时前
数据同化与动态状态估计:让孪生持续贴合现实
人工智能·python·深度学习·transformer·迁移学习
通信仿真爱好者2 小时前
第【139】期--基于深度学习的OFDM信道估计方法研究--python完整代码
python·深度学习·ofdm·信道估计
威哥爱编程2 小时前
模拟面试智能体开发实战 07:答完一题就点评一题,结构化输出给分建议,让每道题都变成复盘
python·agent·harmonyos
cpolar技术支持2 小时前
中文文件名排序跟拼音对不上:os.listdir 返回的是文件系统顺序,三个中文名按字节排结果正好相反
python·文件系统·cpolar·编码·排序
Thanks_ks2 小时前
【第 008 讲】在终端中运行 Python 程序:交互模式与脚本模式 | 绝对路径与相对路径 | 以模块方式运行 | 常见报错的识别与排查
python·异常处理·终端·脚本·命令行·cmd·python 解释器
威哥爱编程3 小时前
模拟面试智能体开发实战 08:总评报告先过三道闸,防泄题防夸大防错建议,才敢发到候选人手上
python·agent·harmonyos
郝学胜-神的一滴3 小时前
LangChain Skill 实现(渐进披露 On-Demand Skill,LangChain 官方 Deep Agent Skill 模式)
开发语言·python·langchain·numpy