Struggling with quadmesh for the dynamical.org HRRR dataset

I’m trying out the new dynamical.org HRRR data on AWS, and while I can get an image plot with CRS to work, the quadmesh isn’t working correctly.

I’m guessing there is something hvplot doesn’t like about their 2D longitude, latitude arrays, but the CF convention units look okay and so does the bounding box, so I’m stumped!

Here’s a reproducer:

import icechunk
import xarray as xr
import hvplot.xarray

storage = icechunk.s3_storage(bucket="dynamical-noaa-hrrr", 
                              prefix="noaa-hrrr-forecast-48-hour/v0.1.0.icechunk/", 
                              anonymous=True,
                              region='us-west-2')  
repo = icechunk.Repository.open(storage)
session = repo.readonly_session("main")
ds = xr.open_zarr(session.store, chunks=None)    

var = "temperature_2m"
da =  ds[var].sel(init_time="2020-04-01T00", lead_time="6h").load()

da.hvplot.quadmesh(x='longitude', y='latitude', geo=True, tiles='OSM', cmap='Spectral_r', rasterize=True, alpha=0.7,
               title=f'{var} @ Time={da.valid_time.values}')

produces:


while if we use image with CRS, it’s okay:

da.hvplot.image(x='x', y='y', geo=True, tiles='OSM', crs=ds.rio.crs, cmap='Spectral_r', rasterize=True, alpha=0.7,
               title=f'{var} @ Time={da.valid_time.values}')

I checked the units and bounds and they seem fine:

what seems to be the problem here!? :slight_smile: