CIAO,
Una possibile soluzione a bassa tecnologia sarebbe quella di calcolare la curva di riferimento in una colonna separata nella tabella dei dati e quindi tracciarla con il resto dei dati.
Migliore,
ST
CIAO,
Facendo clic con il tasto destro sul grafico, seleziona "Personalizza" dal menu contestuale, fai clic sull'icona "+". Da qui è possibile aggiungere uno script utilizzando la funzione Y function ( ), che accetta 2 argomenti: un'espressione (la funzione) e la variabile di dominio (qui, x).
Fai clic su OK e il gioco è fatto.

Questo è anche facile da fare tramite scripting con la funzione Y function ( ). Qui viene tracciato y = 2x^2 + 3x -5, corrispondente ai coefficienti [2, 3, -5]. Ho usato la regola di Horner qui, poiché rende le cose più facili nella prossima illustrazione.
dt = astable(J(40,2,randominteger(-20,20)));
gb = dt << Graph Builder( Variables( X( :Col2 ), Y( :Col1 ) ), Elements( Points( X, Y, Legend( 3 ) ) ) );
report(gb)[framebox(1)] << add graphics script ( Y Function( (2 * x + 3) * x - 5, x ) );
Un problema è che i coefficienti potrebbero essere determinati in fase di esecuzione, potrebbero non essere numeri interi e il grado del polinomio potrebbe essere sconosciuto. In questo caso funzionerà qualcosa di simile al seguente:
dt = astable(J(40,2,randominteger(-20,20)));
gb = dt << Graph Builder(
Variables( X( :Col2 ), Y( :Col1 ) ),
Elements( Points( X, Y, Legend( 3 ) ) ),
);
// get random uniform coefficient matrix
coef = J(5, 1, randomuniform());
// build an expression using Horner's rule:
for each ( {v, i }, coef,// i = 1; v = coef[i];
if (i > 1,
fctExp = insert ( insert ( expr ( multiply ( ) ), nameExpr ( fctExp ) ), expr ( x ) );
,
fctExp = expr ( 0 );
);
fctExp = insert ( insert ( expr( add ( ) ), nameexpr( fctExp ) ), v );
);
// substitute into a graph script expressison and evaluate
graphAdd = expr (
report(gb)[framebox(1)] << add graphics script ( Y Function( _EXPRESSION_ , x ) )
);
eval ( substitute ( nameexpr(graphAdd), expr( _EXPRESSION_ ), nameexpr ( fctExp ) ) );
//show the expression in the log
show ( fctExp )

Il tuo suggerimento iniziale di aggiungere uno script tramite la funzione di personalizzazione ha funzionato. Grazie!
CIAO.
Sto tracciando i dati usando Fit Y per X.
Vorrei tracciare un quadratico pre-noto come linea di riferimento (piuttosto che adattarne uno ai dati mostrati). Posso vedere come questo sarebbe fatto per un adattamento lineare usando Adatta speciale, lineare, quindi vincolare l'intercetta e la pendenza a qualsiasi valore, ma quando si seleziona quadratico (o ordini superiori) dalla casella a discesa non ti dà un posto dove inserire i coefficienti extra da vincolare.
Posso farlo invece tramite script e, in caso affermativo, quale sarebbe il formato?
Grazie molto