[英]How to draw a png-osm-map with coordinates
这不是我的解决方案; 我已经从问题中粘贴了它,因为提问者没有足够的声誉来回答他自己的问题。
我找到了解决方案:
在底图中使用
imshow
包括作为背景图像的png到图中。 为了获得正确的背景图像,我使用了OSM的导出功能,其边界取自Basemap构造函数:m = Basemap(llcrnrlon=7.4319, urcrnrlat=52.0632, urcrnrlon=7.848, llcrnrlat=51.8495, resolution='h', projection='merc') im = plt.imread('background.png') m.imshow(im, interpolation='lanczos', origin='upper')
我从NASA GIBS tileserver中找到了一些可访问的底图图像。 您可以对其他tileservers使用相同的方法。
http://earthdata.nasa.gov/wiki/main/index.php/GIBS_Supported_Clients#Script-level_access_to_imagery
你在python子shell中使用GDAL的gdal_translate:
import subprocess
import matplotlib.pyplot
import mpl_toolkits.basemap
l,u,r,d=(7.4319,52.0632,7.848,51.8495)
subprocess.call ('gdal_translate -of GTiff -outsize 400 400 -projwin {l} {u} {r} {d} TERRA.xml Background.tif'.format(l=l,u=u,r=r,d=d),shell=True )
im=matplotlib.pyplot.imread('Background.tif')
m = mpl_toolkits.basemap.Basemap(llcrnrlon=l, urcrnrlat=u, urcrnrlon=r, llcrnrlat=d,
resolution='h', projection='merc')
m.imshow(im, interpolation='lanczos', origin='upper')
matplotlib.pyplot.show()
这需要上面链接中的TERRA.xml文件,尽管您也可以内联XML。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.