本发明涉及地图绘制技术领域,具体为一种时间地图的绘制方法。
背景技术:
随着交通运输业的发展,空间距离对居民出行的制约作用逐渐降低,居民在出行时会更关注“到达目的地所耗的时间”,而非“到达目的地的距离”,这表明时间因素对居民的出行选择产生更重要的影响。同时,由于交通基础设施空间分布的不均匀性,传统意义上的居民出行耗时与两地间距离的正相关性关系越来越弱,人们更多地关注两点间通行的通达性和便捷性,而传统的地理地图只能显示出发地与目的地的路程距离,使用者无法直观地在地图上看出完成这次出行所需要的时间。
时间地图指的是在传统地图的基础上,在不影响使用者原有的地理位置认知的情况下,对地理点进行坐标转换,尽量保证地理点之间的空间相对位置关系不变,用时间表征两地的通行距离,这样,使用者就可以在地图上读出任意两点之间的距离,即两地通行所需要的时间。由于两地通行的时间会因为采用不同的交通方式而有所不同,因此本发明适用于一种交通方式下(但不仅限于一种)的时间地图的绘制。
目前已有的时间地图绘制技术尚不完善,主要有基于旅行者运动轨迹的时间地图的变换,是一种基于运动轨迹的传统道路专题地图向时间地图的转换。首先,进行数据预处理,将绘制区域原有的公路数据整理完善,计算不同速度下的旅行时间,选择交通节点,检查拓扑关系,构件该绘制区域的几何网络数据集;然后,利用arcgisengine9.3设计软件获取最短时间的道路路径轨迹,利用单点插值和双点插值算法,将部分未被选中的道路轨迹也变换到时间地图中,绘制不同出发点的时间地图。这样,就可以读出该区域内其他城市到同一个城市的时间距离,但无法准确地表现任意两个城市之间的距离。
为使得绘制的时间地图可以实现使用者直接读出两地通行时间的目的,在已有技术的基础上,对现有的时间地图绘制理论基础和技术有必要进一步完善。
技术实现要素:
本发明的目的在于提供一种时间地图的绘制方法,解决了背景技术中提到的问题。
为实现上述目的,本发明提供如下技术方案:一种时间地图的绘制方法,包括以下步骤:
s1:绘制区域内地理点位置信息的采集,选定所需要绘制的区域范围,确定该区域内所需要在地图上显示的地理点,采集显示的地理点的位置信息。
采集的方式可以调用百度地图api对数据库中的地理位置信息进行读取,或采用“国家地理基础信息中心”提供的相关数据。
地理位置信息的表示形式,可以采用经纬度表示,也可以用其他坐标系的形式表示。
s2:绘制区域内地理点之间通行时间信息的采集,在s1选定绘制区域内所需要显示的地理点之后,选择各个地理点之间通行采用的交通方式。
选定采用的交通方式后,对不同的交通方式采用不同的时间信息采集方法。
s3:地理位置信息及通行时间信息的预处理,地理位置信息及通行时间信息的预处理在excel中进行。
设绘制区域内需要显示的地理点的有n个,地理点的位置信息由经纬度表示,经度为横坐标,纬度为纵坐标,则横坐标构成1×n的矩阵,纵坐标也为1×n的矩阵。
设绘制区域内需要显示的地理点的有n个,绘制区域内需要显示的地理点之间的通行时间信息以n×n的矩阵表示,这里假定出发地与目的地往返的时间一致,因此该n×n矩阵以上三角矩阵或下三角矩阵的形式表示,特别地,出发地与目的地相同时,通行时间为0。
s4:时间地图模型的建立,一个地理点可能与多个地理点存在通行通道,对应多个通行时间,但在二维平面地图上,任意三点间关系便可确定三点的相对位置,当待定点与超过两点存在时间距离关系时,便无法实现对所有关系的精确描述,只能使尽量满足所有关系,因此时间的绘制便转化成了最优化问题。本发明提出的时间地图模型采用非线性最小二乘法问题进行表示,表达式如下:
优选的,在s2的步骤中的交通方式包括公路、铁路、航空,只能选取一种交通方式,但不限于所列的三种交通方式。
优选的,选用公路交通时,以绘制区域内的道路网络为基础,由百度地图app获取最快速通行的道路路径,将该路径下的通行时间作为两地的通行时间。
优选的,选用铁路交通时,以绘制区域内的铁路网络为基础,通过“中国铁路客户服务中心”网站查询获取,对于有直达列车地理点,直接查询两地理点间的车次,以所需最短时间的车次行程时间为地理点的时间;对于无直达列车的地理点,在“换乘查询”下查询列车换乘方式,以出发时间和到达时间的时间间隔最短的时间作为两地理点间的通行时间,这种情况下的通行时间包括了列车行驶时间以及换乘等待的时间。
优选的,所述选用航空交通时,以绘制区域内的航线图为基础,通过各个航空公司的售票信息获取直飞两地的最短的时间作为两地理点的通行时间,对于需要通过中间地换机的,以出发时间和到达时间的时间间隔最短的时间作为两地理点间的通行时间,这种情况下的通行时间包括了飞行时间以及换机等待的时间。
优选的,所述选用公路交通时,以绘制区域内的道路网络为基础,由百度地图app获取最快速通行的道路路径,将该路径下的通行时间作为两地的通行时间。
与现有技术相比,本发明的有益效果是:相比于已有的技术,本发明实现了时间地图的核心功能,即读出绘制区域内任意两点的通行时间,使用者在使用时间地图时,既可以看出地理点与地理点的相对位置关系,又可以根据比例尺读出地理点间的通行距离。同时,对模型和算法的优化使得整个计算和绘制过程耗时短,对精度分析则保证了时间地图的精准度。
附图说明
图1为本发明绘制方法的流程图;
图2为本发明长三角地区41座城市的地理地图;
图3为本发明长三角地区41座城市的时间地图;
图4为本发明中国长三角地区41座城市的添加行政边界的时间地图。
具体实施方式
下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。
如图1所示,本发明涉及一种时间地图的绘制方法,技术步骤包括:绘制区域内地理点位置信息的采集(s1),绘制区域内地理点之间通行时间信息的采集(s2),地理位置信息及通行时间信息的预处理(s3),时间地图模型的建立(s4),时间地图模型的求解(s5),时间地图绘制结果的精度分析(s6),时间地图上行政边界的添加(s7)。
以下结合附图进一步阐述本发明的具体实施方式,所举实例仅用于阐述本发明,并非用于限定本发明。
s1:绘制区域内地理点位置信息的采集
本实施方法选取中国长三角地区为时间地图的绘制区域,并选取该区域内41座主要城市作为地图上需要显示的地理点,包括:上海,连云港,徐州,淮安,盐城,泰州,扬州,镇江,常州,无锡,南通,苏州,南京,嘉兴,杭州,绍兴,宁波,金华,丽水,温州,台州,衢州,黄山,宣城,安庆,池州,铜陵,芜湖,巢湖,合肥,六安,滁州,淮南,阜阳,蚌埠,宿州,亳州,淮北,昆山,丹阳,定远。41座城市的坐标由“国家地理基础信息中心”提供的《中国各大城市经纬度数据表》获取。
s2:绘制区域内地理点之间通行时间信息的采集
以长三角的铁路网络为基础,通过“中国铁路客户服务中心”网站查询获取,对于有直达列车地理点,直接查询两地理点间的车次,以所需最短时间的车次行程时间为地理点的时间;对于无直达列车的地理点,在“换乘查询”下查询列车换乘方式,以出发时间和到达时间的时间间隔最短的时间作为两地理点间的通行时间,这种情况下的通行时间包括了列车行驶时间以及换乘等待的时间。
s3:地理位置信息及通行时间信息的预处理
地理点的位置信息由经纬度表示,经度为横坐标,纬度为纵坐标,则横坐标构成1×41的矩阵,纵坐标也为1×41的矩阵。
绘制区域内需要显示的地理点之间的通行时间信息以41×41的矩阵表示,这里假定出发地与目的地往返的时间一致,因此该41×41矩阵以上三角矩阵或下三角矩阵的形式表示,特别地,出发地与目的地相同时,通行时间为0。
s4:时间地图模型的建立
本发明提出的时间地图模型采用非线性最小二乘法问题进行表示,表达式如下:
式中,
i,j——地理实体的编号;
l——所有地理实体所构成的集合;
tij——i,j两地的通行时间,假设tij=tji;
xi,yi——地理点在时间地图上的横纵坐标.
s5:时间地图模型的求解
基于matlab平台,借助添加保角规则的优化的leverberg-marquardt方法进行编程,实现对时间地图模型的求解,包括以下内容:
s51:地理位置信息及通行时间信息的导入与保存
调用example=xlsread(...),导入地理位置信息及通行时间信息,采用保存指令save...example,将数据以矩阵的形式保存,绘制成图,如图2所示。
s52:leverberg-marquardt算法的运行
调用[xf,yf,sx,sy,cnt]=lmfsolve('rosen',[])这一leverberg-marquardt算法进行程序运算,实现城市点的坐标由实际的经纬度转换为时间地图上的坐标,具体代码如下:
s53:将s52运算得到的时间地图上各城市点的坐标以二维图的形式展现,得到中国长三角地区41座城市的时间地图,如图3所示。
s6:时间地图绘制结果的精度分析
确定绘制前后任意两点间通行时间的相关性,代码如下:
[r,p]=corrcoef(t,tnew);
sprintf('t相关系数r=%4d',r(1,2))
[r,p]=corrcoef(yff./xff,y0./x0);
sprintf('角度相关系数r=%4d',r(1,2))
计算得到的结果:时间的相关系数为95.54%,角度的相关系数为99.31%,符合精度要求,认为绘制的时间地图可以使用。
s7:时间地图上行政边界的添加
绘制区域内行政边界的坐标数据可以通过调用百度地图api对数据库中的地理位置信息进行读取,在时间地图显示的地理点绘制完成的基础上,将绘制后的(已完成坐标变换)地理点的坐标,以及未完成变换的行政边界坐标进行归一化处理。将所得结果在autocad中两张图放置于同一图层,进行拉伸变换,即可得到该区域内带有行政边界的时间地图,绘制结果如图4所示。
综上所述:相比于已有的技术,本发明实现了时间地图的核心功能,即读出绘制区域内任意两点的通行时间,使用者在使用时间地图时,既可以看出地理点与地理点的相对位置关系,又可以根据比例尺读出地理点间的通行距离。同时,对模型和算法的优化使得整个计算和绘制过程耗时短,对精度分析则保证了时间地图的精准度。
需要说明的是,在本文中,术语“包括”、“包含”或者其任何其他变体意在涵盖非排他性的包含,从而使得包括一系列要素的过程、方法、物品或者设备不仅包括那些要素,而且还包括没有明确列出的其他要素,或者是还包括为这种过程、方法、物品或者设备所固有的要素。
尽管已经示出和描述了本发明的实施例,对于本领域的普通技术人员而言,可以理解在不脱离本发明的原理和精神的情况下可以对这些实施例进行多种变化、修改、替换和变型,本发明的范围由所附权利要求及其等同物限定。