2016-03-02 107 views
4

我想知道如何在底图中绘制爱尔兰的海岸线。我想用Basemap来绘制整个英国的地图,但是我不能让爱尔兰的海岸线阴谋。我也试过map.drawcountries(linewidth = 0.2),map.fillcontinents(color = 'lightgray', zorder = 0)map.drawmapboundary(linewidth = 0.2),但没有一个给我后面的海岸线。使用matplotlib中的底图绘制爱尔兰的海岸线

我确定爱尔兰有一条海岸线,就像我在现实生活中看到的那样。提前致谢。

No Ireland

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

fig, ax = plt.subplots() 
map = Basemap(projection='merc', lat_0 = 55, lon_0 = -4, 
    resolution = 'i', area_thresh = 0.05, 
    llcrnrlon=-9, llcrnrlat=49, 
    urcrnrlon=2, urcrnrlat=61) 
map.drawcoastlines(linewidth = 0.2, zorder = 0) 
plt.show() 
+2

这很奇怪。您是否尝试过调整地图边界(例如'llcrnrlon = -12')?显然,爱尔兰应该显示在你的地图上,但是在裁剪过程中可能会发生一些奇怪的事情。 – farenorth

+2

设置'llcrnrlon = -8.9'即可。它根本不适用-9。奇怪。谢谢。 –

回答

1

我知道这是一个有点晚了,但你可以试试这个

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

fig, ax = plt.subplots() map = Basemap(projection='merc', lat_0 = 53.866772, lon_0 = -5.23636,resolution = 'i', area_thresh = 0.05,llcrnrlon=-10.65073, llcrnrlat=49.16209,urcrnrlon=1.76334, urcrnrlat=61) map.drawcoastlines(linewidth = 0.2, zorder = 0) plt.show()

+0

谢谢。根据对原始问题的评论,似乎可以绘制除了-9之外的'llcrnrlon'几乎任何值。如果我在答案中改变了这一点,它仍然不起作用。 –