简介
本实验将演示如何使用 Matplotlib 在三维空间中绘制参数曲线。该曲线将由以下三个方程定义:
x = r * sin(theta)
y = r * cos(theta)
z = z
其中,r 和 z 的定义如下:
r = z^2 + 1
z 的取值范围是 -2 到 2,theta 的取值范围是 -4π到 4π。
虚拟机使用提示
虚拟机启动完成后,点击左上角切换到笔记本标签页,以访问 Jupyter Notebook 进行练习。
有时,你可能需要等待几秒钟让 Jupyter Notebook 完成加载。由于 Jupyter Notebook 的限制,操作验证无法自动化。
如果你在学习过程中遇到问题,随时向 Labby 提问。课程结束后提供反馈,我们将立即为你解决问题。
导入必要的库
我们将首先导入必要的库:Matplotlib 和 NumPy。Matplotlib 将用于创建三维绘图,NumPy 将用于生成 x、y 和 z 的值。
import matplotlib.pyplot as plt
import numpy as np
创建三维绘图
接下来,我们将使用 Matplotlib 创建一个三维绘图。我们还将创建一个轴对象,以便为绘图添加标签和图例。
ax = plt.figure().add_subplot(projection='3d')
定义 x、y 和 z 的值
我们将使用 NumPy 生成 x、y 和 z 的值。我们首先定义 theta 和 z 的值的范围。然后,我们将使用这些值来生成 r、x 和 y 的值。
theta = np.linspace(-4 * np.pi, 4 * np.pi, 100)
z = np.linspace(-2, 2, 100)
r = z**2 + 1
x = r * np.sin(theta)
y = r * np.cos(theta)
绘制参数曲线
既然我们已经生成了 x、y 和 z 的值,那么我们就可以使用 Matplotlib 中的 plot() 方法来绘制参数曲线了。
ax.plot(x, y, z, label='parametric curve')
为绘图添加标签和图例
最后,我们将使用 legend() 方法为绘图添加标签和图例。
ax.legend()
总结
在本实验中,我们学习了如何使用 Matplotlib 在三维空间中绘制参数曲线。我们通过三个方程定义了曲线,并使用 NumPy 生成了 x、y 和 z 的值。然后我们绘制了曲线,并为绘图添加了标签和图例。