plgriddata
( | x, |
y, | |
z, | |
npts, | |
xg, | |
nptsx, | |
yg, | |
nptsy, | |
zg, | |
type, | |
data) ; |
Real world data is frequently irregularly sampled, but PLplot 3D
plots require data organized as a grid, i.e., with x sample point values independent
of y coordinate and vice versa. This function takes
irregularly sampled data from the
x[npts]
, y[npts]
, and
z[npts]
vectors; reads the desired grid location from
the input vectors xg[nptsx]
and
yg[nptsy]
; and returns the interpolated result on that grid
using the output matrix zg[nptsx][nptsy]
. The algorithm used
to interpolate the data to the grid is specified with the argument
type
which can have one parameter specified in
argument data
.
x
(PLFLT_VECTOR
, input)
The input x
vector.
y
(PLFLT_VECTOR
, input)
The input y
vector.
z
(PLFLT_VECTOR
, input)
The input z
vector. 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
vectors.
xg
(PLFLT_VECTOR
, input)
A vector 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 vector.
nptsx
(PLINT
, input)
The number of points in the xg
vector.
yg
(PLFLT_VECTOR
, input)
A vector that specifies the grid spacing in the y
direction. Similar to the xg
parameter.
nptsy
(PLINT
, input)
The number of points in the yg
vector.
zg
(PLFLT_NC_MATRIX
, output)
The matrix of interpolated results where data lies in the grid
specified by xg
and yg
.
Therefore the zg
matrix must be dimensioned
nptsx
by nptsy
.
type
(PLINT
, input)
The type of grid interpolation 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)
Python: zg
=plgriddata(x, y, z, xg, yg, type, data)
This function is used in example 21.