【问题标题】:Python Basemap does not show the proper plotPython Basemap 未显示正确的绘图
【发布时间】:2017-12-07 10:41:45
【问题描述】:

我需要在阿姆斯特丹市的地图上绘制一些数据,但我无法让 Basemap 显示正确的绘图。使用下面的代码,我得到的只是一个空图,我不知道如何让地图显示。

我的代码如下:

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt
%matplotlib inline

#Create a map around Amsterdam
#http://www.latlong.net/
#Upper Right Corner 52.4268763,5.2415393
#Lower Left Corner 52.3303609,4.6992733

#fig, ax = plt.subplots()
m = Basemap(projection='merc', 
        llcrnrlat=52.3303609,urcrnrlat=52.4268763,
        llcrnrlon=4.6992733, urcrnrlon=5.2415393,
        resolution='c')

m.fillcontinents()
m.drawcoastlines()
m.drawmapboundary()
plt.show()

我的代码中缺少什么?

【问题讨论】:

  • 您缺少实际的绘图命令——地图的实际数据应该从哪里来?
  • @Thomas 我猜他的意思是没有显示的海岸线。附加数据当然必须单独绘制。

标签: python-3.x matplotlib jupyter-notebook matplotlib-basemap


【解决方案1】:

您为底图resolution='c' 选择的分辨率为“粗略”,这意味着不会显示详细的海岸线。您可以使用任何其他可能的分辨率

l (low), i (intermediate), h (high), f (full)

例子:

resolution="l":

resolution="i":

resolution="h":

resolution="f":

要重现的代码:

from mpl_toolkits.basemap import Basemap
import matplotlib.pyplot as plt

m = Basemap(projection='merc', 
        llcrnrlat=52.3303609,urcrnrlat=52.4268763,
        llcrnrlon=4.6992733, urcrnrlon=5.2415393,
        resolution="f")

m.fillcontinents(color='bisque')
m.drawcoastlines()
m.drawmapboundary(fill_color='lightcyan')

plt.show()

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2022-07-06
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2018-04-08
    • 2011-12-03
    • 2018-09-17
    相关资源
    最近更新 更多