2024-10-01 19:19:52 发布
网友
有人能帮我一个代码,可以生成一个圆的圆周上的所有点,给定半径和圆心。我需要Python中的代码。也有人能解释一下,如果K-均值应用于两组点(我是指圆周上的点),对于两个中心相同但半径不同的圆,会发生什么。集群是如何发生的。
我自己从来没有实现过,但是this Wikipedia article可能是一个开始。它甚至有一个示例实现,您只需要将其转换为Python。:)不过,这对你问题的k-means部分没有帮助。
下面将在以(0,0)为中心的圆的圆周上生成所需的点数,默认值为100点。
import math pi = math.pi def PointsInCircum(r,n=100): return [(math.cos(2*pi/n*x)*r,math.sin(2*pi/n*x)*r) for x in range(0,n+1)]
下面是如何生成圆周长上的所有点。
def all_floats(): for exp in xrange( -1024, 1024 ): for man in xrange( -(2**52), 2**52 ): yield (man/2**52)*2**exp def all_circle( r=100, domain=all_floats ): for x in domain(): for y in domain(): if x**2 + y**2 == r**2: yield x, y
那不可能是你要找的。不过,写起来很有趣。
我认为这个算法可以推广到不同的all_floats类型的函数,这些函数将不同数值域中的所有值都通用化。all_ints将是微不足道的。all_decimal写起来可能也很有趣。
all_floats
all_ints
all_decimal
我自己从来没有实现过,但是this Wikipedia article可能是一个开始。它甚至有一个示例实现,您只需要将其转换为Python。:)不过,这对你问题的k-means部分没有帮助。
下面将在以(0,0)为中心的圆的圆周上生成所需的点数,默认值为100点。
下面是如何生成圆周长上的所有点。
那不可能是你要找的。不过,写起来很有趣。
我认为这个算法可以推广到不同的
all_floats
类型的函数,这些函数将不同数值域中的所有值都通用化。all_ints
将是微不足道的。all_decimal
写起来可能也很有趣。相关问题 更多 >
编程相关推荐