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()

绘制的图像如下:

注意事项

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

总结

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

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

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

相关推荐
麻雀飞吧2 小时前
先判断工具用来学习、开发还是执行
人工智能·python
人邮异步社区2 小时前
学习Python的最佳学习路径是什么?
python·程序员
2302_805771074 小时前
Day13Jmeter数据驱动
功能测试·单元测试·测试用例·需求分析·测试
2302_805771074 小时前
Day14Jmeter+数据库的操作
功能测试·单元测试·测试用例·需求分析
troy1285 小时前
Python 基础语法(九):Django/Flask/FastAPI 三大 Web 框架详细对比解析
python·jupyter·django·flask·github·fastapi
jzshmyt5 小时前
我用 Python 从零“生成“了一个宇宙,然后让它观察自己(v14)
人工智能·pytorch·python·numpy·matplotlib·空间计算·scipy
用户8356290780517 小时前
使用 Python 将 DOCX 转换为 Markdown
后端·python
小玮看世界7 小时前
[Python]ADAS工程实战(三):多传感器扇区统计疑难点全解——归一化、跨边界、去重与置信度
python
paopaokaka_luck7 小时前
小学非遗科普平台(AI 非遗科普问答,ECharts学情数据、非遗资源分类与审核,资源收藏下载与学习记录,学习任务发布和作品评分,活动报名签到与统计)
java·人工智能·spring·信息可视化·数据分析·echarts
TomEval8 小时前
【测AI】第02篇:Python 环境搭建与基础语法速通
人工智能·python·功能测试·aigc