Tracer des couleurs de dégradé en JSL, comment utiliser des variables pour représenter des paramètres spécifiques ?Par exemple, les valeurs maximale et minimale de ceci :
{gradient({Scale Values([200000 0 -200000])})}mx= 200 000
mn=-200000
{gradient({Scale Values([ma 0 -ma])})}</CODE></P><P><CODE class=" language-jsl">
Automatisation et scriptsRe : Tracer des couleurs de dégradé en JSL, comment utiliser des variables pour représenter des paramètres spécifiques ?C'est ma vieille façon de gérer cela :
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = dt << Treemap( Categories( :city ), Sizes( :POP ), Coloring( :CO ) );
treemapGBPref = Get Platform Preference( treemap( "Use Graph Builder" ) );
prefVal = Arg( Arg( Arg( treemapGBPref, 1 ) ) );
mx = 20;
mn = 1;
report = obj << report;
Eval(
Parse(
"report << Dispatch(
{},
\!"400\!",
ScaleBox,
{Legend Model(
1,
Properties(
0,
{gradient( {Scale Values( ["
|| Char( mn ) || " " || Char( mx ) || "] )} )},
Item ID( \!"CO\!", 1 )
)
)}
);"
)
);
Lorsque tout le reste échoue, cette méthode fonctionne toujours.Vous devez l’apprendre et le mettre dans votre boîte à outils.
Re : Tracer des couleurs de dégradé en JSL, comment utiliser des variables pour représenter des paramètres spécifiques ?Merci Jim!
{gradient( {Scale Values( ["
|| Char( mn ) || " " || Char( mx ) || "] )} )}
Re : Tracer des couleurs de dégradé en JSL, comment utiliser des variables pour représenter des paramètres spécifiques ?Comme alternative, vous pouvez créer la matrice en dehors de la commande et l'utiliser via Nom Expr(plage)
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Cities.jmp" );
obj = dt << Treemap( Categories( :city ), Sizes( :POP ), Coloring( :CO ) );
range = [1 20];
(obj << Get Legend Server()) << Legend Model(
1,
Properties(
0,
{gradient( Scale Values( Name Expr( range ) ) )}
)
);