我正在地图上绘制一架飞机上的数据,我想在飞机上的最新数据点的坐标上插入一张飞机的这个75px×29px PNG图像。
据我所知,pyplot.imshow()是完成此操作的最佳方法。但是,我在第1步挂断,让图像甚至显示。使用正常图形而不是Basemap,使用imshow可以很容易地显示图像,但是当使用Basemap时,我无法将其显示出来。请参阅示例代码。
如果我可以让图像显示在地图上,我假设我可以通过反复尝试使用imshow()的extent属性来设置它的位置和一些适当的维度,并从地图中转换绘图坐标坐标x,y = m(lons,lats)。
以下是示例代码(尝试下载上面的飞机图像)。
from matplotlib import pyplot as plt
from mpl_toolkits.basemap import Basemap
import Image
from numpy import arange
lats = arange(26,29,0.5)
lons = arange(-90,-87,0.5)
m = Basemap(projection='cyl',llcrnrlon=min(lons)-2,llcrnrlat=min(lats)-2,
urcrnrlon=max(lons)+2,urcrnrlat=max(lats)+2,resolution='i')
x,y = m(lons,lats)
u,v, = arange(0,51,10),arange(0,51,10)
barbs = m.barbs(x,y,u,v)