yujianshengucas的个人博客分享 http://blog.sciencenet.cn/u/yujianshengucas

博文

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

已有 45351 次阅读 2017-1-4 14:25 |个人分类:Bernese|系统分类:科研笔记| 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





https://blog.sciencenet.cn/blog-1094854-1025358.html

上一篇:centos7 download
下一篇:google chrome 离线安装包下载
收藏 IP: 61.183.114.*| 热度|

0

该博文允许注册用户评论 请点击登录 评论 (0 个评论)

数据加载中...

Archiver|手机版|科学网 ( 京ICP备07017567号-12 )

GMT+8, 2024-7-27 22:07

Powered by ScienceNet.cn

Copyright © 2007- 中国科学报社

返回顶部