|
From: <pl...@pi...> - 2007-10-25 00:28:18
|
On Tue, 23 Oct 2007 22:01:33 +0200, <ln...@dr...> wrote: >> >> Yes one of the problems with splines is that the contraints placed on >> continuity and the fact that it must pass through all data points can >> lead >> to some fairly unexpected and sometimes extreme excursions from the zone >> where the real data lie. >> > I beg to disagree: you certainly are not forced to go through all your > data > points for a smoothed spline. Of course, csplines do this way, but > acsplines not > (and bezier curves also do not necessarily pass through all the points). You are correct to an extent but acsplines are still basically applying a cspline and hence the artificial constraints that are the basis of that technique. Massaging the wieghts to get it to "look better" is adding error to error it does not correct the fundemental problem. For example csplines have problems following rapid changes, ie they dont follow and then they tend to overshoot badly. If you use acsplines and play with the wieghts around the change you may play down the overshoot by reducing the surrounding wieghts. But in doing this you mask the change that is real. You are further corrupting the data and masking real effects, not improving the fit. The ability to add a column of weights is valuable but these values should have some experimental justification not just be used as arbitary fiddle factors. I dont think this approach addresses my critisim of csplines. It may be that you are trying to clobber some fairly high frequency experimental noise on an effect that is fairly smooth in nature. In this case, as you point out, fiddling coeffs is a bit like a hand drawn line and taking a tangent with a ruler and pencil. If that fits your needs you're all set, it's good that you were able to find a solution for the derivatives. I think this case in point highlights a lack in gnuplot's offering in the "smoothing" department. I've touched on this before. csplines are pretty heavy handed when it comes to rounding things off and produce some severe artifacts unless the underlying nature of the data is itself long smooth curves. I know Hans-Bernhard is going to cry foul and say that gnuplot should not be doing data processing. The fact is it does. The trouble is cspines are a bit special and the current offering of csplines or bezier is a bit one-sided. It would be nice to have an alternative that suits other sorts of data. Some sort of mean or wieghted mean for example. regards, Peter. |