简介
当创建多个共享同一坐标轴的图表时,你可能希望确保在放大或缩小其中一个图表时,其他图表也会相应更新。在本实验中,我们将探讨如何使用 Matplotlib 中的 sharex 和 sharey 属性来创建共享坐标轴的图表。
虚拟机使用提示
虚拟机启动完成后,点击左上角切换到 笔记本 标签页,以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,随时向 Labby 提问。课程结束后提供反馈,我们会及时为你解决问题。
导入所需库
第一步是导入所需的库。在本示例中,我们将使用 numpy 和 matplotlib。
import matplotlib.pyplot as plt
import numpy as np
创建数据
接下来,我们需要创建一些要绘制的数据。在本示例中,我们将创建两组数据,即 sin(2*pi*t) 和 sin(4*pi*t)。
t = np.arange(0, 10, 0.01)
创建第一个图表
现在,让我们使用 subplot 创建第一个图表。subplot 接受三个参数:行数、列数和图表编号。在本示例中,我们将创建一个 2 行 1 列的图表(211),这意味着第一个图表将位于上一行。
ax1 = plt.subplot(211)
ax1.plot(t, np.sin(2*np.pi*t))
创建第二个图表
接下来,我们将创建第二个图表。我们将再次使用 subplot,但这次我们会将 sharex 属性设置为第一个图表(ax1)。这确保第二个图表将与第一个图表共享相同的 x 轴。
ax2 = plt.subplot(212, sharex=ax1)
ax2.plot(t, np.sin(4*np.pi*t))
显示图表
最后,我们可以使用 plt.show() 来显示图表。
plt.show()
总结
在本实验中,我们学习了如何在 Matplotlib 中使用 sharex 和 sharey 属性来创建共享同一坐标轴的图表。当创建多个以不同视角展示相同数据的图表时,这非常有用。通过共享坐标轴,我们可以确保在缩放或平移时,各个图表保持同步。