百度地图根据list经纬度算每个点到剩余点的平均距离、最远距离和最近距离

一、使用步骤

说明:给你一大串坐标list。计算每个点到其他所有点的最近最远平均距离。

1.打开百度地图api在线demo(随便一个都行)

2.替换<script></script>的内容如下。

3.点击运行。完美呈现,arry部分就是给的经纬度坐标list,根据需求自己替换。最后log部分是我的开发环境所需要的格式。其他的程序自己配置obj的字段。

<script type="text/javascript">
var mp = new BMap.Map("container");
mp.centerAndZoom(new BMap.Point(116.3964,39.9093), 10);
var pointA=new BMap.Point(121.6016,31.24569);
var pointB=new BMap.Point(121.6016,31.23569);

var yy=[];
var arry=[{"name":"金桥","x":121.6016,"y":31.24569},{"name":"浦南","x":121.5162,"y":31.20286},{"name":"杨思","x":121.5014,"y":31.14245},{"name":"三林","x":121.5363,"y":31.15065},{"name":"曙光","x":121.6004,"y":31.19231},{"name":"川沙","x":121.7124,"y":31.19347},{"name":"施湾","x":121.7651,"y":31.15555},{"name":"曹路","x":121.6864,"y":31.27431},{"name":"仁济","x":121.5299,"y":31.21279},{"name":"洋泾","x":121.5532,"y":31.24789},{"name":"高桥","x":121.5853,"y":31.34904},{"name":"沪东","x":121.5869,"y":31.27624},{"name":"唐镇","x":121.6665,"y":31.21207},{"name":"高行","x":121.6135,"y":31.3011},{"name":"惠南","x":121.7434,"y":31.06428},{"name":"临港","x":121.9293,"y":30.89213},{"name":"大团","x":121.7469,"y":30.97339},{"name":"周浦","x":121.602,"y":31.10427},{"name":"新场","x":121.6523,"y":31.02593},{"name":"祝桥","x":121.7693,"y":31.09085},{"name":"康桥","x":121.6228,"y":31.14619},{"name":"泥城","x":121.8036,"y":30.91128},{"name":"周家渡","x":121.5154,"y":31.18273},{"name":"张江","x":121.6331,"y":31.2029},{"name":"北蔡","x":121.5598,"y":31.19166},{"name":"黄楼","x":121.6748,"y":31.16943},{"name":"迪士尼","x":121.6854,"y":31.15212},{"name":"合庆","x":121.7283,"y":31.2446},{"name":"航头","x":121.5922,"y":31.08266},{"name":"东方南院","x":121.5193,"y":31.154},{"name":"康德","x":121.5188,"y":31.1329},{"name":"金杨","x":121.5188,"y":31.1329},{"name":"孙桥","x":121.6395,"y":31.17994},{"name":"芦潮港","x":121.8674,"y":30.87377},{"name":"金桥北翼","x":121.6206,"y":31.26906},{"name":"书院","x":121.8718,"y":30.95819},{"name":"小洋山","x":122.0655,"y":30.63821},{"name":"浦东","x":121.6016,"y":31.24569}];
for(j=0;j<arry.length;j++){
var obj={};
var ss=[];
obj.name=arry[j].name;
for( i=0;i<arry.length;i++){
if(i!=j){
var pointc=new BMap.Point( arry[j].x, arry[j].y);
var pointd=new BMap.Point( arry[i].x, arry[i].y);
//obj.name=arry[i].name;
//obj.distance=(mp.getDistance(pointc,pointd)).toFixed(2);
ss.push((mp.getDistance(pointc,pointd)/1000).toFixed(2));
}
}
obj.juli=arrAverageNum2(ss);
obj.jin=arrMinNum2(ss);
obj.yuan=arrMaxNum2(ss);
yy.push(obj);
}
console.log(JSON.stringify(yy));
</script>

数据仅供参考。本人手打。转载请注明出处!谢谢

微信:a446595997

QQ:446595997

原文地址:https://www.cnblogs.com/ZGQ-VIP/p/12165547.html