已知xy,求几个点到某一点的距离
时间: 2024-10-12 21:09:21 浏览: 22
要计算给定坐标 `x` 和 `y` 的一系列点到特定点 `(px, py)` 的距离,你可以使用 MATLAB 中的 `pdist2` 函数。这个函数可以计算两点之间的欧氏距离,非常适合于处理这种情况。假设 `X` 是一个包含所有点的列向量(每个行对应一个点,x 坐标在前 y 坐标在后),而 `(px, py)` 是一个一维列向量,那么你可以这样做:
```matlab
% 假设 X 是点的坐标矩阵,每一行代表一个点的 (x, y) 坐标
X = [x1, y1; x2, y2; ...; xn, yn]; % 用实际数据替换这些
% px 和 py 是目标点的坐标
px = px;
py = py;
% 使用 pdist2 计算距离
distances = pdist2(X, [px; py]); % 第二个参数是一个列向量,表示单个点的位置
% 如果你只有一个点,可以直接写成
% distances = sqrt((X(1,:) - [px py]).^2 + (X(2,:) - [py px]).^2);
```
结果 `distances` 将是一个向量,其中的元素是相应点到 `(px, py)` 的距离。
阅读全文