从GPS点绘制线

您所在的位置:网站首页 python根据坐标点画线 从GPS点绘制线

从GPS点绘制线

#从GPS点绘制线| 来源: 网络整理| 查看: 265

我有大约100个gps坐标列表,我想画出每一个列表所组成的线。在

其中一个使用散点绘制的列表看起来有点像:

gps points

很明显那里有一条线

我尝试了几种方法对gps位置进行排序并绘制它们:

lats = [] lngs = [] with open(filename) as f: for line in f: lat, lng = line.split("\t") lats.append(float(lat)) lngs.append(float(lng)) def sort_positions(position): return position[0]+position[1] positions= zip(lngs, lats) positions = sorted(poss, key=sort_positions) for i, positionin enumerate(positions): lng, lat = position #plt.scatter(lng, lat) try: n_lng, n_lat = positions[i+1] plt.plot((lng, n_lng),(lat, n_lat), "b") except IndexError: pass plt.show() 按经度排序 ^{pr2}$

Longitude Sort

按纬度排序def sort_positions(position): return position[1]

Latitude Sort

通过求和def sort_positions(position): return position[0]+position[1]

Sommation Sort

如果这条线在其中一个轴(纬度/经度)上基本是直线,那么它会绘制得很好(一些小的凸起仍然显示出来)

以下是其中一个按纬度排序的列表。在

Latitude Sort 2

我只想在两点之间的距离小于200~500米的情况下绘制,但由于缺少一些数据,我最终在线条上留下了洞。在

Distance

可能我做错了。有人知道如何正确地画出这条线吗?在

编辑:

回答rth回答:

Two Approachs

蓝线在这个问题中使用他的方法,红色线使用他的other answer中的方法。在

忽略了红色正在关闭循环的事实。在

这两种方法都有一些局限性,首先,红色的不能处理太多的点,我不得不使用1/90的点来处理这两个点,蓝色的在点过于聚集(图像中的黑点)时会产生一些奇怪的急转弯,而红色的在这些地方有一些奇怪的曲线。在



【本文地址】


今日新闻


推荐新闻


CopyRight 2018-2019 办公设备维修网 版权所有 豫ICP备15022753号-3