简介
本教程将指导你使用 Python 中的 Matplotlib 创建一个带有文本箭头的带注释散点图。
虚拟机提示
虚拟机启动完成后,点击左上角切换到“笔记本”标签,以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,随时向 Labby 提问。课程结束后提供反馈,我们将立即为你解决问题。
This tutorial is from open-source community. Access the source code
💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版
本教程将指导你使用 Python 中的 Matplotlib 创建一个带有文本箭头的带注释散点图。
虚拟机启动完成后,点击左上角切换到“笔记本”标签,以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,随时向 Labby 提问。课程结束后提供反馈,我们将立即为你解决问题。
首先,我们需要导入必要的库,并为散点图生成一些随机数据。
import matplotlib.pyplot as plt
import numpy as np
## Fixing random state for reproducibility
np.random.seed(19680801)
fig, ax = plt.subplots(figsize=(5, 5))
ax.set_aspect(1)
x1 = -1 + np.random.randn(100)
y1 = -1 + np.random.randn(100)
x2 = 1. + np.random.randn(100)
y2 = 1. + np.random.randn(100)
ax.scatter(x1, y1, color="r")
ax.scatter(x2, y2, color="g")
接下来,我们将使用 ax.text()
函数向图表添加文本注释。我们将创建两个注释,一个用于“样本 A”,另一个用于“样本 B”。
bbox_props = dict(boxstyle="round", fc="w", ec="0.5", alpha=0.9)
ax.text(-2, -2, "Sample A", ha="center", va="center", size=20,
bbox=bbox_props)
ax.text(2, 2, "Sample B", ha="center", va="center", size=20,
bbox=bbox_props)
为了指示数据的方向,我们将使用 ax.text()
函数和 bbox
参数添加一个文本箭头,并将 boxstyle
设置为 “rarrow”。
bbox_props = dict(boxstyle="rarrow", fc=(0.8, 0.9, 0.9), ec="b", lw=2)
t = ax.text(0, 0, "Direction", ha="center", va="center", rotation=45,
size=15,
bbox=bbox_props)
bb = t.get_bbox_patch()
bb.set_boxstyle("rarrow", pad=0.6)
最后,我们将使用 ax.set_xlim()
、ax.set_ylim()
和 plt.show()
函数设置绘图的 x 和 y 界限,并显示绘图。
ax.set_xlim(-4, 4)
ax.set_ylim(-4, 4)
plt.show()
在本教程中,我们学习了如何使用 Python 中的 Matplotlib 创建一个带有文本箭头的注释散点图。我们使用 ax.text()
函数向图中添加注释和文本箭头,并使用 ax.set_xlim()
、ax.set_ylim()
和 plt.show()
函数设置绘图界限并显示绘图。