Interpolation of unequally spaced data
25 ビュー (過去 30 日間)
古いコメントを表示
I have a small set of (x,y) data points which are not evenly spaced. I want to interpolate the data for some analysis work.With very few points I am unable to work out.I cant use interp1 for the data is not evenly spaced.ANY SUGGESTIONS ?
3425.0 12.5 825.0 25 200 37.5 75 50 25 62.5 12.5 75
2 件のコメント
Image Analyst
2014 年 7 月 15 日
Please supply the x locations, and the y values of your input data. Then supply us the x locations of the places where you want your estimated output y values.
採用された回答
Star Strider
2014 年 7 月 15 日
Your data do not have to be evenly spaced to use interp1.
For example:
x = sort(unique(randi(50,1,10)));
y = randi(10,1,length(x));
xi = linspace(0,max(x),15);
yi = interp1(x,y,xi,'linear');
figure(1)
plot(x,y,'-*b')
hold on
plot(xi,yi,'pr')
hold off
grid
legend('Original','Interpolated')
1 件のコメント
Image Analyst
2014 年 7 月 15 日
It's not clear, but his xi might also be randomly located (that's why I asked), but your code should also work with
xi = sort(unique(randi(50,1,10)));
just as well, since, like John said, there's no reason interp1 won't work with randomly located data.
その他の回答 (0 件)
参考
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!