vec2grid

version 1.3.0.1 (3.57 KB) by
Reshapes vector data to a grid

Updated Thu, 23 Sep 2021 18:01:55 +0000

From GitHub

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
``````

Cite As

Kelly Kearney (2022). vec2grid (https://github.com/kakearney/vec2grid-pkg), GitHub. Retrieved .

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