how to realize look up function in m script

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 件のコメント

Mathieu NOE
Mathieu NOE 2024 年 7 月 5 日
hello
sure , you can use interpolation (with interp1 ) or you can also fit a polynomial with polyfit
wenchao zhang
wenchao zhang 2024 年 7 月 5 日
編集済み: wenchao zhang 2024 年 7 月 5 日
hi,Mathieu, if i just want use simple smooting method,not consider polynominal,how to do
Star Strider
Star Strider 2024 年 7 月 5 日
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
Mathieu NOE 2024 年 7 月 5 日
if you can , share yur data and we can show you some options (if you are unsure how to proceed)
wenchao zhang
wenchao zhang 2024 年 7 月 5 日
ok, i wiil share data later.
wenchao zhang
wenchao zhang 2024 年 7 月 5 日
extreploation need consider, if input x is out of range
Walter Roberson
Walter Roberson 2024 年 7 月 5 日
xi = interp1(y, x, yi, 'linear', 'extrap')
wenchao zhang
wenchao zhang 2024 年 7 月 6 日
yes,you are right.

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

 採用された回答

wenchao zhang
wenchao zhang 2024 年 7 月 5 日
編集済み: Walter Roberson 2024 年 7 月 5 日

0 投票

use interp1 seems ok,
x = 0:pi/4:2*pi;
v = sin(x);
xq = 0:pi/16:2*pi;
figure
vq2 = interp1(x,v,xq,'spline');
plot(x,v,'o',xq,vq2,':.');
xlim([0 2*pi]);
title('Spline Interpolation');

その他の回答 (0 件)

カテゴリ

ヘルプ センター および File ExchangeSmoothing についてさらに検索

製品

リリース

R2018b

Community Treasure Hunt

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

Start Hunting!

Translated by