由经纬度计算地球上任意两点的距离
在地球上,城市的地理位置、GPS定位、一些地标的地理位置等是由经纬度给出的,本文主要根据两个地理位置的经纬度,来计算两个地理位置之间的距离。
%计算城市间距离
zb=xlsread('C:\Users\dell-pc\Desktop\zuobiao.xlsx','B2:C140'); %把城市的经纬度坐标数据导入到zb矩阵
jd=zb(:,1); %经度
jd=jd*pi/180; %转化成弧度
wd=zb(:,2); %纬度
wd=wd*pi/180; %转化成弧度
%转化成空间直角坐标系
x=cos(wd).*cos(jd);
y=cos(wd).*sin(jd);
z=sin(wd);
aa=zeros(139);
for i=1:139
for j=1:139
a=acos(x(i)*x(j)+y(i)*y(j)+z(i)*z(j));
aa(i,j)=a;
end
end
aa=6371.393*aa; %距离矩阵,6371.393是地球的半径