In general, the intent of the Stineman interpolation is not so much to
follow certain mathematical criteria, but more to provide a "visually
pleasing" smooth interpolation. In other words: the interpolated curve
typically is what the human eye would choose as smooth interpolation. It
gives "good results" for many kinds of "typical" series of data and
tends to have less overshooting effects than other interpolation
methods. You will certainly find (or be able to construct) cases where
this is not the case any more.
If you want a bit more control, you can provide the slopes via the
optional yp argument. If you want to guarantee a monotonic
interpolation, you will need to find an alternative algorithm for
autocomputing the slopes from the points.
If you want to have a look at the original paper, I can send you a scan.
Greetings,
Norbert
Krishna Bhagavatula wrote:
> Hi,
>
> Given that the values of ordinates are changing monotonically, I found
> that in some cases, stineman interpolation is monotonic even when the
> slopes are not monotonic. And in other cases, it overshoots. Like in
> the following one:
>
> x = (0, 10, 70, 100)
> y = (0, 535, 595, 1000)
> xx = arange(0,100,1)
> yy = stineman_interp(xx,x,y,yp=None)
> plot(x,y,'x')
> plot(xx,yy)
>
> Are there some factors that can make the interpolation monotonic, when
> the slopes are not monotonic? or does it depend on case by case basis?
>
> 
>
> 
> Register Now for Creativity and Technology (CaT), June 3rd, NYC. CaT
> is a gathering of techside developers & brand creativity professionals. Meet
> the minds behind Google Creative Lab, Visual Complexity, Processing, &
> iPhoneDevCamp as they present alongside digital heavyweights like Barbarian
> Group, R/GA, & Big Spaceship. http://p.sf.net/sfu/creativitycatcom
> 
>
> _______________________________________________
> Matplotlibusers mailing list
> Matplotlibusers@...
> https://lists.sourceforge.net/lists/listinfo/matplotlibusers
>
