我想获取在R中圆上等距离n个点的坐标。
数学解决方案是:
exp((2*pi * i)*(k/n)) 其中 0 <= k < n
有许多SOF问题来处理这个问题。所有的解决方案都在非R环境中: 在球体上均匀分布n个点 (提供java、python解决方案) 生成圆上的点 (非R解决方案) 计算圆上8个等距点的像素坐标 (python解决方案) 在圆上均匀绘制点 (非R解决方案)
有许多SOF问题来处理这个问题。所有的解决方案都在非R环境中: 在球体上均匀分布n个点 (提供java、python解决方案) 生成圆上的点 (非R解决方案) 计算圆上8个等距点的像素坐标 (python解决方案) 在圆上均匀绘制点 (非R解决方案)
如何在R中绘制沿圆周的点(非等距)
圆周上每个点的坐标(非R解决方案)
如何有效地在屏幕上绘制N个点?(python解决方案)
在圆上近似位置n个点(非R解决方案)
我的解决方案:
# For 4 points, 0<=k<4
exp((2*pi*sqrt(-1))*(0/4)); exp((2*pi*sqrt(-1))*(1/4)); exp((2*pi*sqrt(-1))*(2/4)); exp((2*pi*sqrt(-1))*(3/4))
复数i在实数集R中没有定义。不存在与圆周率pi(3.14)相反的常数。模拟i的技巧sqrt(-1)不起作用,会出现错误:
[1] NaN
Warning message: In sqrt(-1) : NaNs produced
...Npoints+1)[-1])
更改为...Npoints+1)[-(Npoints+1)])
,以完全匹配数学解决方案(0<=k<n)。上面的代码适用于(0<k<=n)。由于单位根是重复循环的,因此上述反映(0<k<=n)的代码也完美地完成了问题。此外,您的想法1i
摆脱了我们对sqrt(as.complex(-1))
的依赖,这对我来说是非常新颖的。非常感谢。 - Erdogan CEVHER