如何绘制地理参考图像,使其“适合”Matplotlib中的绘图坐标系

时间:2012-09-10 22:55:29

标签: image plot matplotlib cartography

一个非常相似的问题,以同样的方式解决:how to use 'extent' in matplotlib.pyplot.imshow


我有一份描述地理轨迹的地理坐标列表(“轨迹记录”)。此外,我有办法获取跨越轨迹记录的图像,在那里我知道图像角落的“地理坐标”。

我的情节目前看起来像这样(注意刻度 - x =经度,y =纬度,UTM,WGS84):

enter image description here

然后假设我知道下面图像的角坐标(或没有蓝色轨迹的版本),并想绘制它,因为它适合绘图的坐标系。

enter image description here

我该怎么做?

(作为附注,如果重要,我打算使用瓷砖)


根据Joe Kington的评论(等待他的实际答案,以便我可以接受),下面的代码按预期工作,给出了一个pannable和zoomable固定方面“georeferenced”瓦片,我能够绘制tracklogs:

import matplotlib.pyplot as plt
import Image
import numpy

imarray = numpy.asarray(Image.open('map.jpg'))

plt.plot([0,1], [0,1], 'o', c='red', ms=20)  ## some reference circles for debugging
plt.imshow(imarray, extent=[0,1,0,1])   ## some random map whose corners have known coordinates
plt.axis('equal')
plt.show()

enter image description here

1 个答案:

答案 0 :(得分:0)

这里的答案确实不多,但如果您使用的是matplotlib,并且使用了geos-tuff,请查看matplotlib.basemap
默认情况下,所有操作都在UTM地图上完成,但您可以选择自己的投影。 另请参阅http://www.geophysique.befor example中的优秀教程列表。