我必须检查一个点是否在半椭圆a和b的椭圆内。我生成了一个元组列表(点),然后生成另一个元组列表(dotsin),我只保留那些在椭圆内的点。
但是,生成时,有些点会掉出椭圆。这个错误是否会累积谷值计算,如果是的话,我该如何改进,使点不会脱离曲线?
请注意,我在Python中有点生疏,有些事情对我来说并不明显。 在此先感谢!
dots=[(random.uniform(-a,a),random.uniform(-b,b)) for i in range(1000)]#;dots
dotsin=[(x,y) for x,y in dots if (x**2 + y**2)<((a*cos(atan(y/x)))**2 + (b*sin(atan(y/x)))**2)]#;dotsin
plt.scatter([x[0] for x in dotsin],[y[1] for y in dotsin])
plt.grid()
的图像是“在这里输入的形象描述”下,如果你感到困惑,因为页面将不会允许我还张贴图片。 –