expr et evalexpr pour les limites de gradient de Graph BuilderJ'essaie de configurer un script qui générera un générateur de graphiques avec un gradient minimum et maximum égal aux valeurs quantiles de la colonne tracée.
Malheureusement, les syntaxes expr et evalexpr que j'utilise ne fonctionnent pas pour la matrice dans "Scale Values".
J'ai besoin d'aide.
dt0 = current data table();
param = "Voltage";
colp = dt0:param;
graph_high = Quantile( 0.975, column(dt0, param) << get as matrix() );
graph_low = Quantile( 0.025, column(dt0, param) << get as matrix() );
cmd = expr(
Graph Builder(
Size( 550, 550 ),
Show Control Panel( 0 ),
Variables(
X( :x ),
Y( :y ),
Color( :expr(param) )
),
Elements( Points( X, Y, Legend( 6 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
6,
Properties(
0,
{gradient( {Scale Values( [expr(graph_low) expr(graph_high)] )} )}, // *Need Help Here*
Item ID( expr(param), 1 )
)
)}
)
)
);
);
eval(evalexpr(cmd));Exploration et visualisation des donnéesPersonnalisation de masseRe : expr et evalexpr pour les limites de gradient du générateur de graphiquesJe n'ai pas vos données à valider, mais cela devrait fonctionner :
dt0 = current data table();
param = "Voltage";
colp = dt0:param;
graph_high = Quantile( 0.975, column(dt0, param) << get as matrix() );
graph_low = Quantile( 0.025, column(dt0, param) << get as matrix() );
val matrix = [](1,0) || graph_low || graph_high;
cmd = expr(
Graph Builder(
Size( 550, 550 ),
Show Control Panel( 0 ),
Variables(
X( :x ),
Y( :y ),
Color( :expr(param) )
),
Elements( Points( X, Y, Legend( 6 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
6,
Properties(
0,
{gradient( {Scale Values( Expr( val matrix ) )} )}, // *Need Help Here*
Item ID( expr(param), 1 )
)
)}
)
)
);
);
eval(evalexpr(cmd));Re : expr et evalexpr pour les limites de gradient du générateur de graphiquesMerci beaucoup. Cela a fonctionné.
Maintenant que vous m'avez donné l'idée de créer une matrice à l'aide de variables, puis de mettre cette matrice dans le script Graph Builder, j'ai décidé de jouer. Il semble que je n'ai pas besoin d'utiliser Expr() autour de la "matrice val".
Je trouve que ça marche aussi :
dt0 = current data table();
param = "Voltage";
colp = dt0:param;
graph_high = Quantile( 0.975, column(dt0, param) << get as matrix() );
graph_low = Quantile( 0.025, column(dt0, param) << get as matrix() );
val matrix = matrix( {graph_low, graph_high} );
cmd = expr(
Graph Builder(
Size( 550, 550 ),
Show Control Panel( 0 ),
Variables(
X( :x ),
Y( :y ),
Color( :expr(param) )
),
Elements( Points( X, Y, Legend( 6 ) ) ),
SendToReport(
Dispatch(
{},
"400",
ScaleBox,
{Legend Model(
6,
Properties(
0,
{gradient( {Scale Values( val matrix )} )},
Item ID( expr(param), 1 )
)
)}
)
)
);
);
eval(evalexpr(cmd));