Ovaj će blog objasniti kako iscrtati liniju koja najbolje odgovara u MATLAB-u pomoću polifit() funkcija.
Kako iscrtati liniju koja najbolje odgovara u MATLAB-u?
Iscrtavanje linije koja najbolje odgovara u MATLAB-u može se lako izvesti pomoću ugrađenog polifit() funkcija. Ova se funkcija koristi za aproksimaciju podataka uklapanjem krivulje u zadane podatkovne točke. Funkcija uzima više argumenata, uključujući podatkovne točke i stupanj polinoma. The polifit() funkcija generira vektor koeficijenata koji se koristi za procjenu polinoma u bilo kojoj točki.
Ako imamo n podatkovnih točaka, postaje moguće napisati polinom koji ima stupanj manji od n-1 koji može ili ne mora proći kroz sve podatkovne točke, koristeći polifit() funkcija.
Sintaksa
The polifit() funkcija ima nekoliko sintaksi koje se mogu koristiti u MATLAB-u za izvođenje zadataka prilagođavanja krivulje:
p = polifit ( x,y,n )
[ p.s ] = polifit ( x,y,n )
[ p,S,mu ] = polifit ( x,y,n )
Ovdje:
Funkcija p = polifit(x,y,n) daje koeficijente za polinom p(x) ima stupanj n koji daje liniju najboljeg pristajanja koristeći metodu najmanjeg kvadrata za podatke u y. P ima duljinu n+1, a p-ovi koeficijenti imaju potencije u padajućem redoslijedu.
Funkcija [p,S] = polifit(x,y,n) daje strukturu S, koja se može koristiti u polival() funkcioniraju kao argument za dobivanje procjene pogreške.
Funkcija [p, S, in] = polifit (x, y, n) vraća mu kao vektor s dva elementa koji imaju vrijednosti za centriranje i skaliranje. The u (1) je ekvivalentno srednja vrijednost (x) , dok u (2) jednako je std(x) . S ovim opcijama, polifit() prilagođava x tako da njegov izlaz nulte vrijednosti ima jediničnu standardnu devijaciju.
Primjeri
Slijedite navedene primjere kako biste razumjeli rad polifit() funkcija za iscrtavanje linije koja najbolje odgovara u MATLAB-u.
Primjer 1: Kako iscrtati liniju koja najbolje odgovara u MATLAB-u pomoću funkcije polyfit(x, y, n)?
Ovaj primjer prvo stvara vektor x koji ima 11 ravnomjerno raspoređenih elemenata sadržanih u intervalu [0, 20]. Zatim pronalazi vrijednosti y koje odgovaraju svim x-ovima pomoću funkcije pogreške dvorište (x) . Nakon toga koristi se polifit() funkcija za uklapanje polinoma 9. stupnja u dane podatkovne točke. Na kraju iscrtava rezultate polinomske procjene s finijom mrežom.
x = [ 0 : 2 : dvadeset ] ';y = nasljeđe(x);
p = polifit(x,y,9);
f = polival(p,x);
plot(x,y,' O ',x,f,' - ')
Primjer 2: Kako iscrtati liniju koja najbolje odgovara u MATLAB-u pomoću funkcije [p, S]= polyfit(x, y, n)?
Ovaj MATLAB kod prvo stvara vektor x s 11 ravnomjerno raspoređenih elemenata sadržanih u intervalu [0, 20]. Zatim pronalazi vrijednosti y koje odgovaraju svim x-ovima koristeći grijeh(x) funkcija. Nakon toga koristi se polifit() funkcija za uklapanje polinoma 10. stupnja u dane podatkovne točke. Na kraju iscrtava rezultate polinomske procjene s finijom mrežom.
x = [ 0 : 2 : dvadeset ] ';y = sin(x);
[p,S] = polifit(x,y,10)
f = polival(p,x);
plot(x,y,' O ',x,f,' - ')
Zaključak
MATLAB uključuje ugrađeni polifit() funkcija za iscrtavanje linije koja najbolje odgovara. Ova nam funkcija omogućuje aproksimaciju podataka uklapanjem krivulje u zadane podatkovne točke. Ako imamo n podatkovnih točaka, polinom koji ima stupanj manji od n-1 može dati najbolju aproksimaciju za danih n podatkovnih točaka. Ovaj vodič nam je pružio informacije o uklapanju krivulje i pomaže nam razumjeti kako iscrtati liniju koja najbolje odgovara u MATLAB-u.