python绘制gps路径_从GPS点绘制线

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

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

python绘制gps路径_从GPS点绘制线_第1张图片

很明显那里有一条线

我尝试了几种方法对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}$

python绘制gps路径_从GPS点绘制线_第2张图片

按纬度排序def sort_positions(position):

return position[1]

python绘制gps路径_从GPS点绘制线_第3张图片

通过求和def sort_positions(position):

return position[0]+position[1]

python绘制gps路径_从GPS点绘制线_第4张图片

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

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

python绘制gps路径_从GPS点绘制线_第5张图片

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

python绘制gps路径_从GPS点绘制线_第6张图片

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

编辑:

回答rth回答:

python绘制gps路径_从GPS点绘制线_第7张图片

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

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

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

你可能感兴趣的:(python绘制gps路径)