Contenuto principale

Adattamento della curva polinomiale

Questo esempio mostra come adattare una curva polinomiale a un insieme di punti dati utilizzando la funzione polyfit. È possibile utilizzare polyfit per trovare i coefficienti di un polinomio che si adatta a un insieme di dati nel senso dei minimi quadrati utilizzando la sintassi

p = polyfit(x,y,n),

dove:

  • x e y sono vettori contenenti le coordinate dei punti dati x e y

  • n è il grado del polinomio da adattare

Creare alcuni dati di test x-y per cinque punti dati.

x = [1 2 3 4 5]; 
y = [5.5 43.1 128 290.7 498.4];

Utilizzare polyfit per trovare un polinomio di terzo grado che si adatti approssimativamente ai dati.

p = polyfit(x,y,3)
p = 1×4

   -0.1917   31.5821  -60.3262   35.3400

Dopo aver ottenuto il polinomio per la linea di adattamento utilizzando polyfit, è possibile utilizzare polyval per valutare il polinomio in altri punti che potrebbero non essere stati inclusi nei dati originali.

Calcolare i valori della stima polyfit su un dominio più fine e tracciare la stima sui valori reali dei dati per il confronto. Includere un'annotazione dell'equazione per la linea di adattamento.

x2 = 1:.1:5;
y2 = polyval(p,x2);
plot(x,y,'o',x2,y2)
grid on
s = sprintf('y = (%.1f) x^3 + (%.1f) x^2 + (%.1f) x + (%.1f)',p(1),p(2),p(3),p(4));
text(2,400,s)

Figure contains an axes object. The axes object contains 3 objects of type line, text. One or more of the lines displays its values using only markers

Vedi anche

|

Argomenti