2019年华为杯数学建模大赛D题画汽车行驶路径

程序需要用到python的四个库,分别是folium、numpy、xlrd和os。我用的是python2.7版本,只有os是自带的,剩下三个库都需要用pip安装。程序的大致思路就是,先读入经纬度的excel表格,再将其转化成矩阵,再利用folium库中的函数在地图上绘制出路径。
folium库能够在Leaflet地图上将数据可视化,Leaflet是一个Javascript库中的开源地图。
首先导入四个库,然后读入经纬度的excel表格,由于题目给的表格中的数据太多,可以选中经纬度的数据重新创建一个新的excel表格。
2019年华为杯数学建模大赛D题画汽车行驶路径_第1张图片
一共185725组经纬度数据。先创建一个同样大小的矩阵,再将excel表格中的经纬度一列一列的读出,最后再放入创建好的矩阵中。
2019年华为杯数学建模大赛D题画汽车行驶路径_第2张图片
这里说一下Map,Map的语法为Map([纬度,经度],zoom_start,width,height,control_scale,no_touch),第一个参数[纬度,经度]是设置中心坐标,默认是None,参数zoom_start是初始地图的缩放尺寸,参数height是地图的高度,control_scale是设置是否在地图上显示比例尺,默认为false,no_touch为是否禁止触碰地图或者拖拽地图,默认情况是不禁止。这些都是可选参数,一般情况只会用到前两个参数。
在这里插入图片描述
这里强调一下,location本身必须是个矩阵,而且矩阵中的每个元素必须是[纬度,经度]的形式。再调用folium中的PolyLine函数将每个经纬度坐标用线连起来,线的颜色为红色,其中weight是线的大小,opacity是线的透明度。add_to(m)是将这些线添加到地图m中,最后保存成.html文件。结果如下:
2019年华为杯数学建模大赛D题画汽车行驶路径_第3张图片

你可能感兴趣的:(python,用python在地图上画路径)