Quick start
Contents
Quick start#
import xbitinfo as xb
import xarray as xr
xr.set_options(display_style="text")
ds = xr.tutorial.load_dataset("eraint_uvz")
# xb.plot_distribution(ds)
ds
Get information content per bit#
using xbitinfo.xbitinfo.get_bitinformation()
info_per_bit = xb.get_bitinformation(ds, dim="longitude")
info_per_bit
Visualize information content#
using xbitinfo.graphics.plot_bitinformation()
fig = xb.plot_bitinformation(info_per_bit)
Get keepbits#
using xbitinfo.xbitinfo.get_keepbits()
keepbits = xb.get_keepbits(info_per_bit, 0.99)
keepbits
Apply bitrounding#
using xbitinfo.bitround.xr_bitround()
or xbitinfo.bitround.jl_bitround()
(does not work for chunked data)
ds_bitrounded = xb.xr_bitround(ds, keepbits)
Save compressed#
using xbitinfo.save_compressed.ToCompressed_Netcdf
or xbitinfo.save_compressed.ToCompressed_Zarr
NetCDF#
ds_bitrounded.to_compressed_netcdf("bitrounded_compressed.nc")
ds.to_compressed_netcdf("compressed.nc")
ds.to_netcdf("original.nc")
!du -hs *.nc
!rm *.nc
Zarr#
ds_bitrounded.to_compressed_zarr("bitrounded_compressed.zarr", mode="w")
ds.to_compressed_zarr("compressed.zarr", mode="w")
ds.to_zarr("original.zarr", mode="w");
!du -hs *.zarr
!rm -r *.zarr