So I have this table of data, x and f(x). I am trying use an appropriate technique to fit a curve to the data
But when I try to plot the data, I get this error message " Array indices must be positive integers or logical values". I guess because of the negative values
But excel actually did it with no problem.
Please, what do i do?
x = [0 0.1579 0.3158 0.4737 0.6316 0.7895 0.9474];
f(x) = [-0.3637 0.3164 -1.1263 -1.0672 0.1076 1.8249 -0.1899];
plot( x,f(x),'o');

 Akzeptierte Antwort

madhan ravi
madhan ravi am 15 Nov. 2018
Bearbeitet: madhan ravi am 15 Nov. 2018

1 Stimme

Use interp1() with suitable method:
x = [0 0.1579 0.3158 0.4737 0.6316 0.7895 0.9474];
f = [-0.3637 0.3164 -1.1263 -1.0672 0.1076 1.8249 -0.1899];
xx = linspace(x(1),x(end),1000);
yy=interp1(x,f,xx,'spline');
plot( x,f,'o',xx,yy,'r');

2 Kommentare

Abraham
Abraham am 15 Nov. 2018
Thanks a lot. That solves the problem
madhan ravi
madhan ravi am 15 Nov. 2018
Anytime :) , make sure to accept the answer

Melden Sie sich an, um zu kommentieren.

Weitere Antworten (0)

Kategorien

Mehr zu Get Started with Curve Fitting Toolbox finden Sie in Hilfe-Center und File Exchange

Community Treasure Hunt

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

Start Hunting!

Translated by