Ciao a tutti,
Ho un problema con la rappresentazione grafica di alcuni dati da un esperimento FTIR. Ho un elenco contenente il nome delle colonne che voglio rappresentare sull'asse Y in modo che siano tutte sovrapposte sulla stessa scala (non una sopra l'altra). Ma in qualche modo non riesco a capire come scrivere il codice.
Ho provato così ma sembra che "Position([1])" non funzioni davvero.
Qualcuno può aiutare?
Grazie!
gb = dt<< Graph Builder(
Show Control Panel(1),
Variables(X(:Wavenumber)),
Elements( Line(X,Y))
);
gb << inval;
For Each({y_col, idx}, columns_list,
Eval(evalExpr(
gb << Add Variable({Expr(Name Expr(As Column(dt, y_col))),Position([1]), Role("Y")})
));
);
gb << Update window;Hai confrontato come apparirebbe lo script se Graph Builder lo avesse creato? C'è un piccolo errore nel tuo codice
Graph Builder(
Variables(
X(:SITE),
Y(:NPN1),
Y(:PNP1, Position(1)),
Y(:PNP2, Position(1)),
Y(:NPN2, Position(1))
),
Elements(Line(X, Y(1), Y(2), Y(3), Y(4), Legend(4)))
);
Nota come viene utilizzata la posizione (hai []. Mancava anche ",", che ho corretto quando ho aggiunto la formattazione JSL al tuo codice in modo da poter usare la riformattazione JSL più facilmente).
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Semiconductor Capability.jmp");
gb = dt<< Graph Builder(
Show Control Panel(1),
Variables(X(:Site)),
Elements(Line(X,Y))
);
columns_list = {"NPN1", "PNP1", "PNP2", "NPN2"};
For Each({y_col, idx}, columns_list,
Eval(evalExpr(
gb << Add Variable({Expr(Name Expr(As Column(dt, y_col))), Position(1), Role("Y")})
));
);

Ciao jthi!
In effetti l'unico problema era con [ ]... Grazie per averlo notato!
Migliore,
Luigi