Matlab interp1 function x-points for given y-points
12 次查看(过去 30 天)
显示 更早的评论
Dear Community Members,
Hopefully this finds you safe and well. Using interp1 to acquire x-points for given y-points does not seem to work. Data in this particular instance generated via a function however in reality it is experimental data.
%**main function
x=[3:0.1:6];
y=sin(x);
%***y-array for new x-values
y_array = [-0.9:0.005:0.1];
x_new = interp1(y,x,y_array);
figure
plot(x,y,'k+-',x_new,y_array,'rx-')
grid on
Resutant image see attachment. 

Any help on how to extrapolate between current and next data opints would be appreciated.
0 个评论
采纳的回答
Ameer Hamza
2020-10-8
Inverting nonlinear function using interp1() like this is not correct. Check the following code
%**main function
x=[3:0.1:6];
y=sin(x);
%***y-array for new x-values
y_array = -0.9:0.005:0.1;
interp_x = @(xq) interp1(x, y, xq);
x_new = fsolve(@(xq) interp_x(xq) - y_array, 3+rand(size(y_array)));
figure
plot(x,y,'k+-',x_new,y_array,'rx-')
grid on
4 个评论
更多回答(0 个)
另请参阅
类别
在 Help Center 和 File Exchange 中查找有关 Graphics Object Properties 的更多信息
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!