此曲线的数据https://pastebin.com/FZTi3bAf
到目前为止,我的代码:
poly = np.polyfit(df['x'], df['y'],2)
p = np.poly1d(poly)
我需要在这个问题中输入新点(x,y)。
由于半径显然对于非圆形曲线是可变的,因此归结为计算所有点到中心点的距离。如果此中心点是您的原点,则距离仅为sqrt(x**2 + y**2)
,其中x, y
是数据集中的特定坐标。如果中心在某个点x0, y0
,则该点变为sqrt((x - x0)**2 + (y - y0)**2)
。 通过将这些点视为numpy数组,可以很方便地实现所有这些。
dh
)的距离。然后,如果dl
是边缘点之间的距离,则可以写(dl/2)^2 = (2R - dh) * dh
并从该等式中获得R
。