使用python实时绘制gps坐标(全屏视图)

时间:2014-04-01 12:20:59

标签: python-2.7 matplotlib-basemap

我想在字图上绘制IP地址,我一直在使用带有动画的Basemap,它完全符合我的要求,但它不会全屏显示图形。

为了全屏显示,我使用pygame将世界地图(从Basemap生成)设置为背景图像,并为每个x / y添加圆圈,但是,并非所有城市都正确绘制;哥德堡和开普敦是正确的,纽约无处可寻,悉尼正在开普敦绘制。

绘图编码(米勒圆柱投影): {

map = Basemap(projection='mill', long_0=210)
map.drawcoastlines(color='blue')
map.drawmapboundary(fill_color='black')
map.fillcontinents(color='black',lake_color='black')
plt.savefig('map.png', bbox_inches='tight', pad_inches=0, dpi=200)

pygame.init()

bmap = pygame.image.load('map.png')
brect = bmap.get_rect()

size = (width, height) = bmap.get_size()

#Gothenburg
lat = 57.70812489
lng = 11.94975493

#Map size 620 x 454

lat = math.radians(lat)
lng = math.radians(lng)

xlat = (width / 2) + (width / (2 * math.pi + 0.4 * lat))

xlng = 1.25 * math.log(math.tan(0.25 * math.pi + 0.4 * lat))
xlng = (height / 2) - (height / (2 * 2.303412543)) * xlng

screen = pygame.display.set_mode(size)
screen.blit(bmap, brect)

pygame.draw.circle(screen, (250, 0, 0), [int(xlat), int(xlng)], 2)
pygame.display.flip()

}

我真的不知道哪两种方法最适合哪种方法。或者我可以考虑其他解决方案吗?

0 个答案:

没有答案