Parabola plot not displayed correctly

1 view (last 30 days)
Sparkle89
Sparkle89 on 18 Jul 2019
Edited: Sparkle89 on 18 Jul 2019
I am trying to have a quadratic fit to my data.
X = randi(100,[40, 1])
Y = (2* (X.^2)) +(3*X) +(5);
X2 = [ones(size(X)) X X.^2]
m3 = X2 \ Y;
y3 = X2*m3;
scatter(X,Y);
hold on
plot(X,y3)
ylabel('Y')
title('y= ax^2+bx+c', 'FontSize',18)
hold off;
untitled1.jpg
However, when I display the plot istead of a single parabolic fir I am getting multiple lines.
Please help. I experimented this while learning linear regression.

Accepted Answer

KSSV
KSSV on 18 Jul 2019
You are suing the random numbers for demo.....you have to sort them before you use:
X = randi(100,[40, 1]) ;
X = sort(X) ;
Y = (2* (X.^2)) +(3*X) +(5);
X2 = [ones(size(X)) X X.^2]
m3 = X2 \ Y;
y3 = X2*m3;
scatter(X,Y);
hold on
plot(X,y3)
ylabel('Y')
title('y= ax^2+bx+c', 'FontSize',18)
hold off;
  1 Comment
Sparkle89
Sparkle89 on 18 Jul 2019
Edited: Sparkle89 on 18 Jul 2019
Thank you.It worked. Can you explain the need for sorting because I could fit a line without sorting?

Sign in to comment.

More Answers (0)

Categories

Find more on Statistics and Machine Learning Toolbox in Help Center and File Exchange

Tags

Community Treasure Hunt

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

Start Hunting!