vec2grid.m Documentation
This is a simple utility to rearrange a list of data points into an ndgrid-style grid. It allows the original data points to be listed in any order, and allows for missing grid points (which become NaNs in the final grid).
Note: In order to support higher dimensional data, I opted to return data in ndgrid format rather than meshgrid format. This means output will often need to be transposed to be used with plotting functions like surf, pcolor, etc.
Syntax
[xg, yg] = vec2grid(x1, x2, ..., y);
[xg, yg] = vec2grid(xy);
[xg1, xg2, ... yg] = vec2grid(...);
Example
Let's assume we have a list of 2D data points, with a corresponding vector of z-data for each x-y point. The data points are stored in random order, and a few points are missing from the full grid.
[x,y] = ndgrid(1:4,1:5);
z = (1:numel(x))';
order = randperm(numel(x), numel(x)-3)';
x = x(order); y = y(order); z = z(order);
[x y z]
ans =
1 3 9
3 5 19
4 3 12
3 3 11
2 2 6
2 4 14
4 5 20
1 5 17
2 3 10
2 5 18
4 2 8
3 2 7
3 4 15
2 1 2
1 1 1
1 4 13
3 1 3
We use vec2grid to return the data to a gridded format.
[xg,yg,zg] = vec2grid([x y z])
xg =
1
2
3
4
yg =
1
2
3
4
5
zg =
1 NaN 9 13 17
2 6 10 14 18
3 7 11 15 19
NaN 8 12 NaN 20
引用格式
Kelly Kearney (2024). vec2grid (https://github.com/kakearney/vec2grid-pkg), GitHub. 检索来源 .
MATLAB 版本兼容性
平台兼容性
Windows macOS Linux类别
标签
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!