I want to show axes tick marks outside. Cartopy removes axes tick marks!. I tried the solution here.
import matplotlib.pyplot as plt
import cartopy.crs as ccrs
from cartopy.mpl.ticker import (LongitudeFormatter, LatitudeFormatter,
LatitudeLocator, LongitudeLocator)
fig, ax = plt.subplots(figsize=(10, 5), subplot_kw={"projection":ccrs.PlateCarree()})
ax.coastlines()
gl = ax.gridlines(crs=ccrs.PlateCarree(), draw_labels=True,
linewidth=2, color='gray', alpha=0.5, linestyle='--')
gl.top_labels = False
gl.left_labels = False
gl.xlocator = LongitudeLocator()
gl.ylocator = LatitudeLocator()
gl.xformatter = LongitudeFormatter(auto_hide=False)
gl.yformatter = LatitudeFormatter()
ax.tick_params(axis="both",
tickdir='out',
length=15,
grid_transform=ccrs.PlateCarree()) # this did not work
gl.axes.tick_params(axis="both",
tickdir='out',
length=15,
grid_transform=ccrs.PlateCarree()) # this also did not work
plt.show()