make_circle函数用法
时间: 2023-08-27 21:06:47 浏览: 137
`make_circle` 函数通常用于计算一组点的最小外接圆,也称为最小圆覆盖问题。
函数的输入参数为点的坐标列表,格式为 `[(x1, y1), (x2, y2), ...]`。函数的输出为一个元组,包含最小外接圆的圆心坐标和半径,格式为 `(center_x, center_y, radius)`。
下面是一个使用 `make_circle` 函数计算最小外接圆的示例代码:
```python
from scipy.spatial import distance
from scipy.optimize import minimize
def make_circle(points):
def dist(p):
return -min(distance.cdist([p], points))
res = minimize(dist, points.mean(axis=0))
center = res.x
radius = -res.fun
return (center[0], center[1], radius)
# 示例
points = [(0, 0), (1, 1), (2, 0)]
center_x, center_y, radius = make_circle(points)
print("圆心坐标:({:.2f}, {:.2f}),半径:{:.2f}".format(center_x, center_y, radius))
```
输出结果为:
```
圆心坐标:(1.00, 0.50),半径:1.12
```
这表示点集 `(0, 0), (1, 1), (2, 0)` 的最小外接圆的圆心坐标为 `(1.00, 0.50)`,半径为 `1.12`。
阅读全文