Matplotlib:如何在 3D 图形中绘制垂直平面

T_T*_*T_T 3 python matplotlib

我想绘制一个由以下定义的垂直平面

5 = x + y

在 3D 图形中,使用 Matplotlib。

我看过这个这个,但没有机会。我也在这个链接上找到mpl_toolkits.mplot3d.art3d.line_2d_to_3d了,上面写着

将 2D 线转换为 3D

对我来说看起来很有希望,但我不知道如何使用它。

现在,您将如何修改以下代码来实现我的目标?

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

xs = np.linspace(0, 10, 100)
ys = np.linspace(0, 10, 100)

X, Y = np.meshgrid(xs, ys)
Z # ?????????

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(X, Y, Z)
plt.show()
Run Code Online (Sandbox Code Playgroud)

感谢您提前提供帮助。

Mr.*_*. T 5

您的错误是您将xs和定义ys为自变量,而它们是相关的(x + y = 5)。zs这里是独立的:

import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D

xs = np.linspace(0, 10, 100)
zs = np.linspace(0, 10, 100)

X, Z = np.meshgrid(xs, zs)
Y = 5 - X

fig = plt.figure()
ax = fig.add_subplot(111, projection='3d')
ax.plot_surface(X, Y, Z)
plt.show()
Run Code Online (Sandbox Code Playgroud)

示例输出:

在此处输入图片说明