Matplotlib 文本换行与样式设置

Beginner

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

简介

在本实验中,我们将学习如何在 Python Matplotlib 中自动换行文本。我们还将探索如何控制 Matplotlib 绘图中文字的位置和样式。

虚拟机使用提示

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

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

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

这是一个实验(Guided Lab),提供逐步指导来帮助你学习和实践。请仔细按照说明完成每个步骤,获得实际操作经验。根据历史数据,这是一个 中级 级别的实验,完成率为 75%。获得了学习者 100% 的好评率。

设置环境

在开始之前,我们需要确保已安装 Matplotlib。打开终端并输入以下命令:

!pip install matplotlib

创建一个基本绘图

让我们从创建一个带有文本元素的基本绘图开始。在你的 Python 脚本中,添加以下代码:

import matplotlib.pyplot as plt

fig = plt.figure()
plt.axis([0, 10, 0, 10])
plt.text(5, 5, "Hello, Matplotlib!", ha='center')
plt.show()

自动换行文本

现在,让我们来探索如何在 Matplotlib 中自动换行文本。将你代码中的plt.text()行替换为以下内容:

t = ("This is a really long string that I'd rather have wrapped so that it "
     "doesn't go outside of the figure, but if it's long enough it will go "
     "off the top or bottom!")
plt.text(5, 5, t, ha='center', wrap=True)

wrap=True参数告诉 Matplotlib 自动换行文本。

控制文本位置和样式

我们还可以控制 Matplotlib 绘图中文字的位置和样式。尝试在你的脚本中添加以下代码:

plt.text(2, 8, "Top Left", fontsize=12, color='red')
plt.text(8, 8, "Top Right", fontsize=12, color='blue')
plt.text(2, 2, "Bottom Left", fontsize=12, color='green')
plt.text(8, 2, "Bottom Right", fontsize=12, color='purple')

这将在我们的绘图中添加四个文本元素,每个元素都有不同的颜色、字体大小和位置。

保存绘图

最后,让我们将绘图保存为图像文件。在你的脚本中添加以下代码:

fig.savefig("my_plot.png")

这会将我们的绘图保存为 PNG 图像,保存在与脚本相同的目录中。

总结

在这个实验中,我们学习了如何在 Python 的 Matplotlib 中自动换行文本。我们还探索了如何在 Matplotlib 绘图中控制文本的位置和样式。有了这些工具,我们可以为我们的数据创建清晰且视觉上吸引人的图表。