File Exchange

image thumbnail

BIN2MAT

version 1.2.0.0 (2.28 KB) by Andrew Stevens
Create a matrix from scattered data without interpolation

1 Download

Updated 01 Apr 2009

View License

BIN2MAT can be used to create a grid from scattered 2D data using grid-cell averaging (no interpolation). BIN2MAT also accepts function handles so you can evaluate many different functions over each grid cell. If the specified function returns non-scalar output, BIN2MAT will return a cell array.

EXAMPLE (generates screen-shot)

%generate some scattered data
[x,y,z]=peaks(150);
ind=(rand(size(x))>0.9);
xs=x(ind); ys=y(ind); zs=z(ind);

%create a grid
xi=min(xs):0.25:max(xs);
yi=min(ys):0.25:max(ys);
[XI,YI]=meshgrid(xi,yi);

%calculate the mean and standard deviation
%for each grid-cell using bin2mat
Zm=bin2mat(xs,ys,zs,XI,YI); %mean
Zs=bin2mat(xs,ys,zs,XI,YI,@std); %std

%plot the results
figure
subplot(1,3,1);
scatter(xs,ys,10,zs,'filled')
axis image
title('Scatter Data')

subplot(1,3,2);
pcolor(XI,YI,Zm)
shading flat
axis image
title('Grid-cell Average')

subplot(1,3,3);
pcolor(XI,YI,Zs)
shading flat
axis image
title('Grid-cell Std. Dev.')

Comments and Ratings (1)

Guillaume MAZE

Updates

1.2.0.0

modified error-checking, also add a check to make sure x,y,z inputs are column (m x 1) vectors.

MATLAB Release Compatibility
Created with R2009a
Compatible with any release
Platform Compatibility
Windows macOS Linux
Acknowledgements

Inspired: CURVVEC

Discover Live Editor

Create scripts with code, output, and formatted text in a single executable document.


Learn About Live Editor