Linear Interpolate to n equally spaced points

27 views (last 30 days)
I have two sets of coordinate data. The rates of the two are different. I would like to linearly interpolate one tot he same length as the other. I have tried various methods of interp1 but can't seem to get what I need. An quick example would be
in_vector =[0 5 10 5 0].
Need 15 samples of this data.
out_vector = interp(in_vector, 15)
and produces and output of
[0, 1.42857, 2.85714, 4.28571, 5.71429, 7.14286, 8.57143, 10.0000,
8.57143, 7.14286, 5.71429, 4.28571, 2.85714, 1.42857, 0].
Basically what interpft but linear and not FFT.

Accepted Answer

dpb
dpb on 20 Oct 2015
Edited: dpb on 20 Oct 2015
doc interp1
>> v=[0 5 10 5 0]; L=length(v);
>> interp1(1:L,v,linspace(1,L,15))
ans =
Columns 1 through 10
0 1.4286 2.8571 4.2857 5.7143 7.1429 8.5714 10.0000 8.5714 7.1429
Columns 11 through 15
5.7143 4.2857 2.8571 1.4286 0
>>

More Answers (0)

Categories

Find more on Interpolation in Help Center and File Exchange

Community Treasure Hunt

Find the treasures in MATLAB Central and discover how the community can help you!

Start Hunting!