首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >散乱点的距离分析

散乱点的距离分析
EN

Stack Overflow用户
提问于 2012-08-11 19:54:38
回答 1查看 729关注 0票数 0

我通过散点算法随机生成了3组点,算法是

代码语言:javascript
复制
M = randi(1000,200);
AP = randi(1000,12);
BS = randi(1000,7);
scatter(M(:,1),M(:,20),21,'b.'); hold on
scatter(AP(:,1),AP(:,9),80,'k*');hold on
scatter(BS(:,1),BS(:,4),'r');hold off

现在,我必须为AP设置覆盖区域,并分析AP和M之间的距离,该距离在覆盖区域内。有谁可以帮我?

EN

回答 1

Stack Overflow用户

发布于 2012-08-12 04:21:52

首先提取AP的覆盖区域:

代码语言:javascript
复制
ExtractedM=[M(:,1) M(:,20)];
ExtractedAP=[AP(:,1) AP(:,9)];%Just creating two different matrices for plotted points

%calculating coverage area of AP i.e. bounding box for coordinates of AP
yMax=max(ExtractedAP(:,2));
yMin=min(ExtractedAP(:,2));
xMax=max(ExtractedAP(:,1));
xMin=min(ExtractedAP(:,1));

%Finding the points from M which lie in the coverage area of AP
[positionBoundedPointsMx1,dummy]=find(ExtractedM(:,1)>=xMin & ExtractedM(:,1)<=xMax);
[positionBoundedPointsMx2,dummy]=find(ExtractedM(:,2)>=yMin & ExtractedM(:,2)<=yMax);
positionBoundedPointsMx=intersect(positionBoundedPointsMx1,positionBoundedPointsMx2,'rows');
boundedPointsM=ExtractedM(positionBoundedPointsMx,:);

%Making sure that correct sets of points in M have been extracted
scatter(M(:,1),M(:,20),21,'b.'); hold on
scatter(AP(:,1),AP(:,9),80,'k*');hold on
scatter(BS(:,1),BS(:,4),'r');hold on;
scatter(boundedPointsM(:,1),boundedPointsM(:,2),'ko');

M中提取的点由黑色圆圈内的蓝点表示。它看起来是正确的,因为M中的所有点都位于AP的覆盖区域内。

现在,我不确定你想要计算什么。假设您只想计算两点之间的欧几里得距离,因此,我将ExtractedAPboundedPointsM转换为向量并使用pdist2

代码语言:javascript
复制
ExtractedAP_Vec=ExtractedAP(:);  %24x1 vector 
boundedPointsM_Vec=boundedPointsM(:);  %224x1 vector

%calculate distance between each point of 'ExtractedAP_Vec' and every point in 'boundedPointsM_Vec'.
dist_AP_M=pdist2(ExtractedAP_Vec,boundedPointsM_Vec); 

附注:绘制散点图,并自行验证。我不能在这里张贴图片,抱歉。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/11914479

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档