| pchip | R Documentation |
Piecewise Cubic Hermitean Interpolation Polynomials.
pchip(xi, yi, x)
pchipfun(xi, yi)
xi, yi |
x- and y-coordinates of supporting nodes. |
x |
x-coordinates of interpolation points. |
pchip is a ‘shape-preserving’ piecewise cubic Hermite polynomial
approach that apptempts to determine slopes such that function values do
not overshoot data values.
pchipfun is a wrapper around pchip and returns a function.
Both pchip and the function returned by pchipfun are vectorized.
xi and yi must be vectors of the same length greater or equal 3
(for cubic interpolation to be possible), and xi must be sorted.
pchip can be applied to points outside [min(xi), max(xi)], but
the result does not make much sense outside this interval.
Values of interpolated data at points x.
Copyright of the Matlab version from Cleve Moler in his book “Numerical Computing with Matlab”, Chapter 3 on Interpolation. R Version by Hans W. Borchers, 2011.
Moler, C. (2004). Numerical Computing with Matlab. Revised Reprint, SIAM.
interp1
x <- c(1, 2, 3, 4, 5, 6)
y <- c(16, 18, 21, 17, 15, 12)
pchip(x, y, seq(1, 6, by = 0.5))
fp <- pchipfun(x, y)
fp(seq(1, 6, by = 0.5))
## Not run:
plot(x, y, col="red", xlim=c(0,7), ylim=c(10,22),
main = "Spline and 'pchip' Interpolation")
grid()
xs <- seq(1, 6, len=51)
ys <- interp1(x, y, xs, "spline")
lines(xs, ys, col="cyan")
yp <- pchip(x, y, xs)
lines(xs, yp, col = "magenta")
## End(Not run)
Add the following code to your website.
For more information on customizing the embed code, read Embedding Snippets.