In [2]:
import numpy as np
import vaex as vx
import vaex.notebook
import scipy.ndimage
vaex.notebook.init()
In [3]:
ds = vx.example()
grid = ds.count(binby=["x", "y", "z"], limits=[-10,10])
In [4]:
# smooth a little bit
smooth = scipy.ndimage.gaussian_filter(grid, 1.5)
In [5]:
v = vx.notebook.volr(np.log10(smooth+10), volume_level=[0.3, 0.5, 0.8], opacity=[0.04, 0.04,0.1], brightness=2.5)
v
In [6]:
# connect some sliders to control the transfer function
from ipywidgets import interact
ws = (0, 0.4, 0.001)
@interact(v1=(0., 1.), o1=(0., 0.3, 0.01), w1=ws, v2=(0., 1.), o2=(0., 0.3, 0.01), w2=ws, v3=(0., 1.), o3=(0., 0.3, 0.01), w3=ws)
def set(v1=0.3, o1=0.1, w1=0.1, v2=0.5, o2=0.1, w2=0.1, v3=0.8, o3=0.2, w3=0.1):
v.set(volume_level=[v1, v2, v3], opacity=[o1, o2, o3], volume_width=[w1,w2,w3])
In [ ]: