使用 Matplotlib 为图表添加注释

Beginner

This tutorial is from open-source community. Access the source code

简介

在本实验中,你将学习如何使用 Matplotlib 为图表添加注释。注释是指向图表添加文本、箭头和形状以提供更多背景信息或突出显示特定感兴趣点的过程。

虚拟机提示

虚拟机启动完成后,点击左上角切换到“笔记本”标签以访问 Jupyter Notebook 进行练习。

有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。

如果你在学习过程中遇到问题,请随时向 Labby 提问。课程结束后提供反馈,我们将立即为你解决问题。

导入 Matplotlib

在我们开始使用 Matplotlib 为图表添加注释之前,必须先导入该库。在这一步中,我们将导入 Matplotlib 并创建一个简单的图表用于注释。

import matplotlib.pyplot as plt

## 创建一个简单的图表
fig, ax = plt.subplots()
ax.plot([0, 1, 2, 3, 4], [0, 1, 4, 9, 16])
plt.show()

添加文本注释

注释的最简单形式是向图表添加文本。在这一步中,我们将向在上一步中创建的图表添加文本。

## 添加文本注释
ax.text(2, 10, "Important Point", fontsize=12, color='red')
plt.show()

添加箭头注释

箭头可用于指出图表中的特定特征或趋势。在这一步中,我们将向图表添加一个指向最大值的箭头。

## 找到最大值
y = [0, 1, 4, 9, 16]
max_index = y.index(max(y))
xmax = max_index
ymax = y[max_index]

## 添加箭头注释
ax.annotate('Maximum Value', xy=(xmax, ymax), xytext=(xmax, ymax + 5),
            arrowprops=dict(facecolor='black', shrink=0.05))
plt.show()

添加形状注释

形状可用于吸引对图表特定区域的关注。在这一步中,我们将添加一个矩形来突出显示(x = 1) 和(x = 3) 之间的区域。

## 添加形状注释
ax.axvspan(1, 3, facecolor='gray', alpha=0.2)
plt.show()

总结

在这个实验中,你学习了如何使用 Matplotlib 为图表添加注释。你学会了如何添加文本、箭头和形状,以提供更多背景信息或突出显示特定的感兴趣点。有了这些工具,你可以创建更具信息性和视觉吸引力的图表与他人分享。