使用Basemap获取城市地图的最佳方法是什么?

5

我正在尝试使用Basemap在python中显示一个城市(例如旧金山)的地图。我尝试了以下代码:

from mpl_toolkits.basemap import Basemap
import numpy as np
import matplotlib.pyplot as plt
# llcrnrlat,llcrnrlon,urcrnrlat,urcrnrlon
# are the lat/lon values of the lower left and upper right corners
# of the map.
# lat_ts is the latitude of true scale.
# resolution = 'c' means use crude resolution coastlines.
m = Basemap(projection='merc',llcrnrlat=37.79,urcrnrlat=37.81,\
        llcrnrlon=-122.42,urcrnrlon=-122.4,lat_ts=20,resolution='c')
m.drawcoastlines()
m.fillcontinents(color='coral',lake_color='aqua')
# draw parallels and meridians.
m.drawparallels(np.arange(-90.,91.,30.))
m.drawmeridians(np.arange(-180.,181.,60.))
m.drawmapboundary(fill_color='aqua')
plt.title("Mercator Projection")
plt.show()

然而这并不起作用,只是在地图应该出现的位置显示蓝色。那么我该如何使用Python获取旧金山的地图?
1个回答

4
你的坐标可能有误:因为你正在缩放某个海洋,所以它显示为蓝色。
此外,这段代码只会绘制海岸线 如文档所述。要获取一个城市的地图,实际上需要使用可用后端之一加载相应的数据。例如,你可以使用 ArcGIS 等 API 服务查询数据 以及相应的方法

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接