Sviluppo4d.it
Sito indipendente di informazioni tecniche per sviluppatori 4th Dimension italiani  

Sviluppatori 4D

Utility 4D

Risorse 4D



4d logo
Naviga: Prev Next

Titolo: Calcolo della linea di tendenza polinomiale in un grafico

Categoria: Info Ultimo Aggiornamento: 15/01/06


Ovvero: Statistica, rendere evidente la tendenza di una serie di valori in un grafico creato con 4D Chart

La graficazione di valori utilizzando le funzioni di 4D Chart ha lo scopo di permettere all’utente di valutare un fenomeno “a colpo d’occhio”.
Avviene spesso che i valori da rappresentare siano discontinui tanto da vanificare l’utilità del grafico, come in questo esempio che rappresenta la vendita giornaliera di un articolo



in casi come questo è indispensabile tracciare una linea di tendenza che renda evidente l’andamento dei valori, la stessa cosa che svolge la funzione “linee di tendenza” di Excel.
Una tra le più efficienti è la derivata polinomiale, ecco il risultato:



Solo ora si può apprezzare l’andamento e la tendenza dei valori.

L’equazione per il calcolo della derivata polinomiale, come è noto è

y = Ax^2 + Bx + C

dove A, B e C sono i coefficienti della parabola, che devono essere calcolati a partire dai valori noti.
Il calcolo dei tre coefficienti è la soluzione del sistema lineare di tre equazioni in tre incognite:




Il method Method_CalcoloCoefficienti che invio (in calce al presente messaggio) è l’implementazione in 4D della soluzione del sistema in tre incognite sopra enunciato e calcola i tre coefficienti a partire da un array di valori che viene passato in un puntatore.


Esempio d’uso

L’uso è molto semplice, faccio un esempio riferito ai valori di vendita giornaliera di un articolo.

Prima di tutto trasferire i valori delle vendite giornaliere in un array, per esempio vt_MioArrayVendite

chiamare il method passando il puntatore all’array dei valori Method_CalcoloCoefficienti (->vt_MioArrayVendite)

il method Method_CalcoloCoefficienti ritorna i tre coefficienti in tre variabili reali:

        vReal_Coefficiente_A
        vReal_Coefficiente_B
        vReal_Coefficiente_C

che permettono di calcolare i valori della curva di tendenza con l’equazione standard della parabola dei minimi quadrati.

Y = (vReal_Coefficiente_A*(X^2))+(vReal_Coefficiente_B*X)+vReal_Coefficiente_C

Nota bene: nel caso in cui i valori noti (passati al method) siano incongruenti e generino un sistema di equazioni indeterminato o impossibile, il valori dei tre coefficienti vengono ritornati tutti a zero. Quindi questa eventualità va prevista e gestita.

Ottenuti i coefficienti, calcoliamo i valori della curva e li memorizziamo in un nuovo array vt_Tendenza

If ((vReal_Coefficiente_A+vReal_Coefficiente_B+vReal_Coefficiente_C)#0) ` se è stato possibile calcolare i coefficienti (sistema determinato)

For ($X;1; Size of array(vt_MioArrayVendite))
        vt_Tendenza{$X):=(vReal_Coefficiente_A*($X^2))+(vReal_Coefficiente_B*$X)+vReal_Coefficiente_C
End for

Else
` non è possibile creare una linea di tendenza
End if

Ora possiamo rappresentare nel grafico sia i valori di vendita (array vt_MioArrayVendite) sia la curva di tendenza (array vt_Tendenza).

Naturalmente la curva così ottenuta premette anche di tracciare una teorica tendenza futura, prolungando i valori dell’asse X.



Clic qui per Metodo Calcolo Coefficienti Sistema lineare di 3 equazioni

Inviato da: Roberto Vergani Visite: 17281

Se accedi con utente e password, puoi aggiungere dei commenti.


Accesso

User: Nuovo
Pass: Accedi

Utenti Registrati

Cerca

Se non trovi le informazioni che cerchi scrivi a aiuto@sviluppo4d.it

4D Principali

4D Discussioni

Faq random


Crediti

Dominio registrato da ZetaNet
Sito realizzato da Nexus srl
4D SQL 11.8.0 offerto da 4D & Italsoftware
Icone di FAMFAMFAM
Moderato da Umberto Migliore
265 utenti registrati

Pagina servita il 19/11/17 alle 00:20:28 Valid HTML 4.01! Valid CSS!

Mutuo Facile, Serie Filmcards, Serie Singloids e altre app di Nexus srl per iPhone e iPad

Cidroid, distributore italiano lettori barcode per Apple iPhone, iPod, iPad della IPC