底图上的刻度线

Tickmarks on basemap

在 python 底图上绘制子午线是一项相当简单的工作:

fig = plt.figure()
ax = fig.add_axes([0.1,0.1,0.8,0.8])
map = Basemap(epsg=3395,
projection="merc",
resolution = 'h', area_thresh = 0.01,
llcrnrlon=0, llcrnrlat=60,
urcrnrlon=5, urcrnrlat=70, ax=ax)

meridians = np.arange(0,5,1)
map.drawmeridians(meridians,labels=[1,0,0,1])

但是,我更希望轴旁边有刻度线,而不是地图上的虚线,因为我觉得它会阻碍地图内容。

我尝试了以下方法,但无济于事:

ax.xaxis.set_ticks(np.arange(0,5,1))

我找到了解决办法。我画了平行线,但保证它们只画在底部:

    np.linspace(startlat,endlat,5) # 5 = number of "ticks"
    map.drawmeridians(meridianinterval,labels=[0,0,0,1], dashes=[6,900], color='w')

查看破折号选项,它绘制 6 像素长的破折号,间隔 900 像素(仅在底部)。