简介
Matplotlib 是一个用于 Python 编程语言及其数值数学扩展 NumPy 的绘图库。它提供了一个面向对象的 API,用于使用 Tkinter、wxPython、Qt 或 GTK 等通用 GUI 工具包将绘图嵌入到应用程序中。Matplotlib 最初由 John D. Hunter 在 2003 年开发。
本教程将指导你如何在 Matplotlib 中使用 .step() 和 .plot() 函数。
虚拟机使用提示
虚拟机启动完成后,点击左上角切换到“笔记本”标签页,以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,随时向 Labby 提问。课程结束后提供反馈,我们会及时为你解决问题。
导入必要的库
首先,我们需要导入必要的库,即 matplotlib.pyplot 和 numpy。
import matplotlib.pyplot as plt
import numpy as np
创建绘图数据
接下来,让我们创建一些用于绘图的数据。我们将使用 numpy.arange() 函数创建一个从 0 到 14 的值数组,并将其存储在变量 x 中。我们还将使用 numpy.sin() 函数创建一个数组,该数组的值是 x 中每个值除以 2 后的正弦值,并将其存储在变量 y 中。
x = np.arange(14)
y = np.sin(x / 2)
使用 .step() 进行绘图
我们可以使用 .step() 函数来创建分段常数曲线。where 参数决定了应该在何处绘制台阶。我们将使用不同的 where 值创建三个绘图。
plt.step(x, y + 2, label='pre (default)', where='pre')
plt.step(x, y + 1, label='mid', where='mid')
plt.step(x, y, label='post', where='post')
plt.legend()
plt.show()
上述代码将创建一个包含三条分段常数曲线的绘图,每条曲线的 where 值都不同。
使用 .plot() 进行绘图
通过使用 .plot() 函数的 drawstyle 参数,我们可以实现与 .step() 相同的效果。我们将使用不同的 drawstyle 值创建三个绘图。
plt.plot(x, y + 2, drawstyle='steps', label='steps (=steps-pre)')
plt.plot(x, y + 1, drawstyle='steps-mid', label='steps-mid')
plt.plot(x, y, drawstyle='steps-post', label='steps-post')
plt.legend()
plt.show()
上述代码将创建一个包含三条分段常数曲线的绘图,每条曲线的 drawstyle 值都不同。
总结
在本教程中,我们学习了如何使用 Matplotlib 中的 .step() 和 .plot() 函数来创建分段常数曲线。我们还学习了如何使用 where 和 drawstyle 参数来确定应该在何处绘制台阶。