You could use triscatteredinterp to interpolate onto a regular grid and then calculate the gradients with MATLAB's builtin gradient function.
doc triscatteredinterp
doc gradient
doc meshgrid
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!