import xarray as xr import numpy as np import holoviews as hv hv.extension('matplotlib') %opts Scatter3D [size_index=None color_index=3] (cmap='fire') img = hv.Image((range(10), range(5), np.random.rand(5, 10)), datatype=['grid']) img img.data arr_img = img.clone(datatype=['image']) print(type(arr_img.data)) try: xr_img = img.clone(datatype=['xarray']) iris_img = img.clone(datatype=['cube']) print(type(xr_img.data)) print(type(iris_img.data)) except: print('One of the following data backend cannot be imported: xarray or iris') print("Array type: %s with bounds %s" % (type(arr_img.data), arr_img.bounds)) dataset3d = hv.Dataset((range(3), range(5), range(7), np.random.randn(7, 5, 3)), ['x', 'y', 'z'], 'Value') dataset3d hv.Scatter3D(dataset3d) dataset3d.select(x=1).to(hv.Image, ['y', 'z']) + hv.Scatter3D(dataset3d.select(x=1)) (dataset3d.to(hv.Image, ['y', 'z'], 'Value', ['x']) + hv.HoloMap({x: hv.Scatter3D(dataset3d.select(x=x)) for x in range(3)}, kdims='x')) hv.Image(dataset3d.aggregate(['x', 'y'], np.mean)) + hv.Image(dataset3d.reduce(z=np.mean)) hv.Spread(dataset3d.aggregate('z', np.mean, np.std)) * hv.Curve(dataset3d.aggregate('z', np.mean)) dataset3d.to(hv.BoxWhisker, 'x', 'Value', groupby=[]) dataset3d.to(hv.Distribution, 'Value', [], groupby='x').overlay() heatmap = hv.HeatMap((['A', 'B', 'C'], ['a', 'b', 'c', 'd', 'e'], np.random.rand(5, 3))) heatmap + heatmap.table() import xarray as xr xr_ds = xr.tutorial.load_dataset("air_temperature") xr_ds hv_ds = hv.Dataset(xr_ds)[:, :, "2013-01-01"] print(hv_ds) %%opts Image [colorbar=True] %%output size=200 hv_ds.to(hv.Image, kdims=["lon", "lat"], dynamic=False)[:, 220:320, :] heatmap.dimension_values('x') heatmap.dimension_values('x', expanded=False) heatmap.dimension_values('x', flat=False) heatmap.dimension_values('z') heatmap.dimension_values('z', flat=False)