import xarray as xr import hvplot.pandas # noqa import hvplot.xarray # noqa import cartopy.crs as ccrs from bokeh.sampledata.airport_routes import airports airports.head(3) airports.hvplot.points('Longitude', 'Latitude', geo=True, color='red', alpha=0.2, xlim=(-180, -30), ylim=(0, 72), tiles='ESRI') import geopandas as gpd cities = gpd.read_file(gpd.datasets.get_path('naturalearth_cities')) cities.hvplot(global_extent=True, frame_height=450, tiles=True) world = gpd.read_file(gpd.datasets.get_path('naturalearth_lowres')) world.hvplot(geo=True) * cities.hvplot(geo=True, color='orange') world.hvplot(geo=True) + world.hvplot(c='continent', geo=True) import spatialpandas as spd spd_world = spd.GeoDataFrame(world) spd_world.hvplot(datashade=True, project=True, aggregator='count_cat', c='continent', color_key='Category10') air_ds = xr.tutorial.open_dataset('air_temperature').load() air_ds.hvplot.quadmesh( 'lon', 'lat', 'air', projection=ccrs.Orthographic(-90, 30), global_extent=True, frame_height=540, cmap='viridis', coastline=True ) air_ds.hvplot.quadmesh( 'lon', 'lat', 'air', projection='LambertConformal', ) rasm = xr.tutorial.open_dataset('rasm').load() rasm.hvplot.quadmesh( 'xc', 'yc', crs=ccrs.PlateCarree(), projection=ccrs.PlateCarree(), ylim=(0, 90), cmap='viridis', project=True, geo=True, rasterize=True, coastline=True, frame_width=800, dynamic=False, ) rasm.hvplot.contourf( 'xc', 'yc', crs=ccrs.PlateCarree(), projection=ccrs.PlateCarree(), ylim=(0, 90), frame_width=800, cmap='viridis', levels=10, coastline=True )