I was able to do with `dask.array`.
import dask.array as da
import numpy as np
coords = ...
dims = ...
var_name = 'value'
chunks = (1, 13, 36, 128, 128)
encoding = {var_name: {'chunks': chunks}}
store = 'test.zarr'
daskarray = da.empty(
(6, 13, 36, 699, 1920),
chunks=chunks,
dtype='float32',
)
daskarray[:] = np.nan
xr.DataArray(
daskarray,
coords=coords,
dims=dims,
).to_dataset(name=var_name).to_zarr(store, mode='w', encoding=encoding)