How to interpolate in between known data points..?

I have data at starting and the ending and I want to interpolate the data in between. Can any one suggest me best method to do it. for example:
Y = peaks(100);
y = Y(50,:);
y(40:50) = 0;
figure();subplot(1,2,1);plot(x,y,'b');title('available data');ylabel('y');
hold on; plot(x,Y(50,:),'b.');legend('available','expected');
subplot(1,2,2);plot(x,Y(50,:),'b');ylabel('Y');title('expected');
dots in first plot of the above (or second plot) is expected and thick line indicates the available data. I want to interpolate in between using the data x<40 and x>50.

 채택된 답변

Stephen23
Stephen23 2018년 6월 27일
편집: Stephen23 2018년 6월 27일

2 개 추천

% Data:
Y = peaks(100);
x = 1:size(Y,2);
y = Y(50,:);
y(40:50) = 0;
% Interpolate zeros:
idx = y~=0;
yn = interp1(x(idx),y(idx),x,'spline');
plot(x,y,x,yn)
legend('missing','interpolated')
Giving:

추가 답변 (1개)

KSSV
KSSV 2018년 6월 27일

0 개 추천

Read about interp1

카테고리

도움말 센터File Exchange에서 Interpolation에 대해 자세히 알아보기

태그

질문:

2018년 6월 27일

편집:

2018년 6월 27일

Community Treasure Hunt

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

Start Hunting!

Translated by