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 是一个强大的工具,可以帮助我们将数据变得更加直观和易于理解。

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

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

相关推荐
老歌老听老掉牙3 小时前
空间曲线数据的拼接与几何变换分析
python·曲线
databook7 小时前
使用 SciPy 库进行时间序列分析
python·数据分析·scipy
java资料站7 小时前
十一、评估测试
开发语言·人工智能·python
szial7 小时前
网络爬虫与 CDP 实战(二):浏览器能访问,Python 却被拒绝?拆开登录态与 CSRF
爬虫·python·csrf
青少儿编程课堂8 小时前
后缀自动机解析:本质不同子串与最长重复片段统计
c++·python·算法·bfs·信息学竞赛
怕浪猫9 小时前
LLM 面试必问的 8 个问题,答不上来直接淘汰
人工智能·python·面试
老歌老听老掉牙10 小时前
从三维旋转的深度解析到Python实现:绕任意轴旋转的奥秘
python·三维旋转
打工仔折腾 AI10 小时前
工业场景下时序库与实时计算一体化架构选型实践对比
java·开发语言·后端·python·性能优化·架构·ai agent 实战
梦幻精灵_cq10 小时前
sumdir——一个伪python.built-in的“术法”打造
python
weixin_4407305012 小时前
函数return、参数、参数组、递归函数、高阶函数等小结
开发语言·python