how to realize look up function in m script
Show older comments
hello, i have x axle table and y axle table, when i set value within the range of x, how to get the output from y, may be some interpolation and curve smoothing should used. i hope it works in m script.

8 Comments
Mathieu NOE
on 5 Jul 2024
hello
sure , you can use interpolation (with interp1 ) or you can also fit a polynomial with polyfit
wenchao zhang
on 5 Jul 2024
Edited: wenchao zhang
on 5 Jul 2024
Star Strider
on 5 Jul 2024
The interp1 function has several method options, depending on what you want to do.
For example:
xi = 90;
yi = interp1(x, y, xi, 'linear')
yi = interp1(x, y, xi, 'pchip')
To find a value of ‘x’ that corresponds to a specific value of ‘y’, simply reverse the arguments:
yi = 90;
xi = interp1(y, x, yi, 'linear')
xi = interp1(y, x, yi, 'pchip')
Fortunately, ‘y’ appears to be a monotonically increasing function of ‘x’. If that were not the situation, it would be necessary to determine the approximate indices of the ‘x’ values where ‘y’ crossed a specific value, and then interpolate in each region in a for loop.
.
Mathieu NOE
on 5 Jul 2024
if you can , share yur data and we can show you some options (if you are unsure how to proceed)
wenchao zhang
on 5 Jul 2024
wenchao zhang
on 5 Jul 2024
Walter Roberson
on 5 Jul 2024
xi = interp1(y, x, yi, 'linear', 'extrap')
wenchao zhang
on 6 Jul 2024
Accepted Answer
More Answers (0)
Categories
Find more on Smoothing 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!