EXCEL根据两点经纬度计算距离

1. 参考:http://jingyan.baidu.com/article/48b558e34df4d47f39c09a42.html

在E2单元格输入公式=6371004*ACOS(1-(POWER((SIN((90-B2)*PI()/180)*COS(A2*PI()/180)-SIN((90-D2)*PI()/180)*COS(C2*PI()/180)),2)+POWER((SIN((90-B2)*PI()/180)*SIN(A2*PI()/180)-SIN((90-D2)*PI()/180)*SIN(C2*PI()/180)),2)+POWER((COS((90-B2)*PI()/180)-COS((90-D2)*PI()/180)),2))/2)

在A2、B2、C2、D2单元格填上两地分别为亮点的经度和纬度 lonA latA lonB latB

2. 参考:https://zhidao.baidu.com/question/711985046322366445.html

=6371004*ACOS((SIN(RADIANS(B2))*SIN(RADIANS(D2))+COS(RADIANS(B2))*COS(RADIANS(D2))*COS(RADIANS(C2-A2))))

3. 网上在线计算:http://www.storyday.com/wp-content/uploads/2008/09/latlung_dis.html

地球是一个近乎标准的椭球体,它的赤道半径为6378.140千米,极半径为 6356.755千米,平均半径6371.004千米(这里忽略地球表面地形对计算带来的误差,仅仅是理论上的估算值);

设第一点A的经 纬度为(LonA, LatA),第二点B的经纬度为(LonB, LatB)

按照0度经线的基准,东经取经度的正值(Longitude),西经取经度负值(-Longitude),北纬取90-纬度值(90- Latitude),南纬取90+纬度值(90+Latitude),则经过上述处理过后的两点被计为(MLonA, MLatA)和(MLonB, MLatB)。那么根据三角推导,可以得到计算两点距离的如下公式:

C = sin(MLatA)*sin(MLatB)*cos(MLonA-MLonB) + cos(MLatA)*cos(MLatB)

Distance = R*Arccos(C)*Pi/180

猜你喜欢

转载自blog.csdn.net/Jipi/article/details/86685235
今日推荐