Как построить изображение с географической привязкой так, чтобы оно "соответствовало" системе координат графика в Matplotlib

Очень похожий вопрос, решаемый так же: как использовать 'экстент' в matplotlib.pyplot.imshow


У меня есть список географических координат ("tracklog"), которые описывают географическую траекторию. Кроме того, у меня есть средства для получения изображения, охватывающего треклог, где я знаю "географические координаты" углов изображения.

Мой график в настоящее время выглядит следующим образом (обратите внимание на отметки - x= долготы, y= широты, в UTM, WGS84):

Затем предположим, что я знаю угловые координаты следующего изображения (или его версии без синей дорожки) и хотел бы построить его так, чтобы оно соответствовало согласованной системе графика.

Как бы я это сделал?

(как примечание, в случае, если это имеет значение, я планирую использовать плитки)


В соответствии с комментарием Джо Кингтона (ожидая его фактического ответа, чтобы я мог его принять), следующий код работает, как и ожидалось, предоставляя панорамируемую и масштабируемую плитку с "пространственной привязкой" с фиксированным аспектом, по которой я могу наносить треклоги:

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()

1 ответ

Ответа на этот вопрос на самом деле немного, но если вы используете matplotlib и используете geos-tuff, взгляните на http://matplotlib.github.com/basemap/.
По умолчанию все операции выполняются на картах UTM, но вы можете выбрать собственную проекцию. Взгляните также на список хороших руководств, например, на http://www.geophysique.be/.

Другие вопросы по тегам