generate vector from fixed point

1 回表示 (過去 30 日間)
matteo avanzi
matteo avanzi 2017 年 11 月 30 日
回答済み: Jos (10584) 2017 年 11 月 30 日
I have a 1x35 array, i want to generate a vector 1x31822 interpolating from the 35 points of the first vector, in a way that the two vectors could have the same shape.
which is the best method?
thanks
  2 件のコメント
Jos (10584)
Jos (10584) 2017 年 11 月 30 日
what do you mean by "have the same shape"? Can you give a small example?
matteo avanzi
matteo avanzi 2017 年 11 月 30 日
yes, the first array represent a kind of parabola with 35 points, i want to create a vector using this 35 points as keypoints; for example between the 1st and 2nd there must be around 909 points(31822/35) that interpolate the 1st and 2nd points. and so on for every point.
hope that it's better
thanks

サインインしてコメントする。

採用された回答

KSSV
KSSV 2017 年 11 月 30 日
Read about interp1.
th = linspace(0,2*pi,35) ;
y = sin(th) ;
figure
hold on
plot(th,y,'.r')
%%interpolation
thi = linspace(min(th),max(th),31822) ;
yi = interp1(th,y,thi) ;
plot(thi,yi,'b') ;

その他の回答 (1 件)

Jos (10584)
Jos (10584) 2017 年 11 月 30 日
interp1 is your friend. An example:
x = [0 4 7 10]
y = (x-5).^2
xx = linspace(0,10,13)
yy0 = interp1(x,y,xx) % default: linear interpolation
yy1 = interp1(x,y,xx,'pchip')
plot(xx,yy0,'r-',xx,yy1,'g-', x,y,'bo')

カテゴリ

Help Center および File ExchangeInterpolation についてさらに検索

Community Treasure Hunt

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

Start Hunting!

Translated by