linear fit of a semilog graph
Afficher commentaires plus anciens
Hello,
I have my data as follows with F1, F2, F3, N1, N2 and N3. I want to do a linear fit of my data and plot that. I tried polyfit as seen in my code. But it just plots a horizontal line...? I tried adding my vectors to a Ntot and Ftot as seen.
What should I do? Thank you.
F1=[200 200 200];
N1=[10000 15000 20000];
F2=[300 300 300];
N2=[8000 7000 7500];
F3=[100 100 100];
N3=[120000 140000 80000];
Ftot=[F3 F2 F1];
Ntot=[N3 N2 N1];
figure
semilogx(N1,F1,'o')
hold on
semilogx(N2,F2,'o')
semilogx(N3,F3,'o')
xlabel('N');
ylabel('F');
grid on
P = polyfit(Ntot,Ftot,1);
yfit = P(1)*Ftot+P(2);
plot(Ntot,yfit,'r-.');
xlim([1000 500000])
ylim([0 max(Ftot)+50])
2 commentaires
Torsten
le 19 Nov 2014
According to your call to polyfit, the next line must read
yfit = P(1)*Ntot+P(2);
instead of
yfit = P(1)*Ftot+P(2);
Best wishes
Torsten.
Star Strider
le 19 Nov 2014
The other option, of course, is to use the polyval function.
Réponse acceptée
Plus de réponses (0)
Catégories
En savoir plus sur Multirate Signal Processing dans Centre d'aide et File Exchange
Community Treasure Hunt
Find the treasures in MATLAB Central and discover how the community can help you!
Start Hunting!
