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

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

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

相关推荐
MATLAB代码顾问4 小时前
5大智能算法优化标准测试函数对比(Python实现)
开发语言·python
ting94520004 小时前
Tornado 全栈技术深度指南:从原理到实战
人工智能·python·架构·tornado
果汁华5 小时前
Browserbase Skills:让 Claude Agent 真正“看见“网页世界
人工智能·python
ZhengEnCi5 小时前
04-缩放点积注意力代码实现 💻
人工智能·python
DeepReinforce5 小时前
三、AI量化投资:使用akshare获取A股主板20260430所有的涨停股票
python·量化·akshare·龙头战法
段一凡-华北理工大学6 小时前
【高炉炼铁领域炉温监测、预警、调控智能体设计与应用】~系列文章08:多模态数据融合:让数据更聪明
人工智能·python·高炉炼铁·ai赋能·工业智能体·高炉炉温
万粉变现经纪人6 小时前
如何解决 pip install llama-cpp-python 报错 未安装 CMake/Ninja 或 CPU 不支持 AVX 问题
开发语言·python·开源·aigc·pip·ai写作·llama
其实防守也摸鱼6 小时前
CTF密码学综合教学指南--第五章
开发语言·网络·笔记·python·安全·网络安全·密码学
callJJ7 小时前
Spring Data Redis 两种编程模型详解:同步 vs 响应式
java·spring boot·redis·python·spring
小郑加油7 小时前
python学习Day12:pandas安装与实际运用
开发语言·python·学习