Tôi cố gắng vẽ âm mưu đồng thời một mặt phẳng và một số điểm trong 3D bằng Matplotlib. Tôi không có lỗi chỉ là điểm sẽ không xuất hiện. Tôi có thể vẽ tại các thời điểm khác nhau một số điểm và máy bay nhưng không bao giờ cùng một lúc. Các phần của mã trông giống như:Matplotlib - Vẽ một mặt phẳng và các điểm trong 3D đồng thời
import numpy as np
import matplotlib.pyplot as plt
from mpl_toolkits.mplot3d import Axes3D
point = np.array([1, 2, 3])
normal = np.array([1, 1, 2])
point2 = np.array([10, 50, 50])
# a plane is a*x+b*y+c*z+d=0
# [a,b,c] is the normal. Thus, we have to calculate
# d and we're set
d = -point.dot(normal)
# create x,y
xx, yy = np.meshgrid(range(10), range(10))
# calculate corresponding z
z = (-normal[0] * xx - normal[1] * yy - d) * 1. /normal[2]
# plot the surface
plt3d = plt.figure().gca(projection='3d')
plt3d.plot_surface(xx, yy, z, alpha=0.2)
#and i would like to plot this point :
ax.scatter(point2[0] , point2[1] , point2[2], color='green')
plt.show()
liên quan: https://stackoverflow.com/questions/13464304/how-can-i-plot-a-3d-plane-in-matlab/13473027#13473027 –
@AndreyRubshtein làm thế nào là có liên quan? Câu hỏi liên kết của bạn là về 'matlab', đây là về' matplotlib' – tom
Hey @tom, nó có một giải thích về công thức toán học, cái được gọi là 'Tính toán z tương ứng' trong câu hỏi gốc –