plgriddata
( | x, |
y, | |
z, | |
npts, | |
xg, | |
nptsx, | |
yg, | |
nptsy, | |
zg, | |
type, | |
data) ; |
Real world data is frequently irregularly sampled, but all PLplot 3D
plots require data placed in a uniform grid. This function takes
irregularly sampled data from three input arrays
x[npts]
, y[npts]
, and
z[npts]
, reads the desired grid location from
input arrays xg[nptsx]
and
yg[nptsy]
, and returns the gridded data into
output array zg[nptsx][nptsy]
. The algorithm used
to grid the data is specified with the argument
type
which can have one parameter specified in
argument data
.
x
(const PLFLT *
, input)
The input x
array.
y
(const PLFLT *
, input)
The input y
array.
z
(const PLFLT *
, input)
The input z
array. Each triple
x[i]
, y[i]
,
z[i]
represents one data sample coordinate.
npts
(PLINT
, input)
The number of data samples in the x
,
y
and z
arrays.
xg
(const PLFLT *
, input)
The input array that specifies the grid spacing in the x
direction. Usually xg
has
nptsx
equally spaced values from the minimum
to the maximum values of the x
input array.
nptsx
(PLINT
, input)
The number of points in the xg
array.
yg
(const PLFLT *
, input)
The input array that specifies the grid spacing in the y
direction. Similar to the xg
parameter.
nptsy
(PLINT
, input)
The number of points in the yg
array.
zg
(PLFLT **
, output)
The output array, where data lies in the regular grid
specified by xg
and yg.
the zg
array must exist or be allocated by
the user prior to the call, and must have dimension
zg[nptsx][nptsy]
.
type
(PLINT
, input)
The type of gridding algorithm to use, which can be:
GRID_CSA
: Bivariate Cubic Spline
approximation
GRID_DTLI
: Delaunay Triangulation Linear
Interpolation
GRID_NNI
: Natural Neighbors Interpolation
GRID_NNIDW
: Nearest Neighbors Inverse
Distance Weighted
GRID_NNLI
: Nearest Neighbors Linear
Interpolation
GRID_NNAIDW
: Nearest Neighbors Around
Inverse Distance Weighted
For details of the algorithms read the source file
plgridd.c
.
data
(PLFLT
, input)
Some gridding algorithms require extra data, which can be specified through this argument. Currently, for algorithm:
GRID_NNIDW
, data
specifies the number of neighbors to use, the lower the
value, the noisier (more local) the approximation is.
GRID_NNLI
, data
specifies what a thin triangle is, in the range
[1. .. 2.]. High values enable the usage of very thin
triangles for interpolation, possibly resulting in error in
the approximation.
GRID_NNI
, only weights greater than
data
will be accepted. If 0, all weights
will be accepted.
Redacted form:
General: plgriddata(x, y, z, xg, yg, zg, type, data)
Perl/PDL: Not available?
Python: zg
=plgriddata(x, y, z, xg, yg, type, data)
This function is used in example 21.