斯蒂芬大帝
首先,定义projection参数很重要。其次,您需要使用不同形状的P, v,z以获得与方法坐标相对应的X, Y,参数:Zplotimport matplotlib.pyplot as pltimport numpy as npfig = plt.figure()ax = fig.add_subplot(111, projection='3d')P = np.array([1,1,1]).reshape(-1,1)v = np.array([1,0,1]).reshape(-1,1)z = np.linspace(-3,3,100)X, Y, Z = P + v*zax.plot(X, Y, Z)plt.show()根据评论reshape(-1, 1)添加了广播所需的额外维度。它也是 的替代品reshape(3, 1)。简单情况 ( arr1 = v; arr2 = np.linspace(-3,3,11)) 可以像这样可视化:曲线的终点g = (1, 1, 1) + z * (1, 0, 1)位于 的区间边界处z,即:g1 = (1, 1, 1) + (-3) * (1, 0, 1) = (-2, 1, -2)
g2 = (1, 1, 1) + 3 * (1, 0, 1) = (4, 1, 4)请注意,z = 1需要获得终点 =(2,1,2)