Script pour colorer les cellules dans une configuration DoELors de la création de DoE, chaque colonne est généralement un mélange de 2 ou 3 valeurs différentes (valeurs hautes et basses, et parfois une valeur centrale). Pour mieux illustrer la configuration DoE pour moi-même et mes collègues, je colorie manuellement les cellules de chaque colonne. Les valeurs élevées sont colorées en rouge, les valeurs centrales sont colorées en vert et les valeurs basses sont colorées en bleu. Il serait avantageux d'automatiser ce processus de coloration. Je souhaite pouvoir exécuter un script qui colorera les cellules des colonnes sélectionnées conformément à la description ci-dessus.Idéalement, le script devrait pouvoir effectuer ce processus pour plusieurs colonnes sélectionnées simultanément. Des suggestions sur la façon dont un tel script pourrait ressembler?
Tableau de donnéesBICHEScriptRe : Script pour colorer les cellules dans une configuration DoEComment définissez-vous le bas, le haut (et parfois le milieu) ? Y a-t-il toujours un maximum de trois valeurs ? Une fois cette décision prise, il devrait être assez simple de créer un script en utilisant la propriété de colonne Value Colors avec les méthodes mentionnées ici Insérer une expression dans une autre en utilisant Eval Insert, Eval Expr, Parse et Substitute basé sur le code fourni par JMP (avec << obtenir les colonnes sélectionnées et la boucle)
Data Table("Untitled 10"):Column 1 << Set Property(
"Value Colors",
{1 = -15113984, 2 = -5682409}
);
Re : Script pour colorer les cellules dans une configuration DoEMerci @jthi ,
Dans la plupart des cas, il n'y a que deux valeurs : une valeur maximale et une valeur minimale. S'il s'agit d'une valeur centrale, il s'agit de la moyenne arithmétique entre les valeurs min et max.Le La propriété de colonne Value Colors est certainement le bon outil, même sans script. Lorsqu'il est utilisé sur plusieurs colonnes simultanément, il simplifie certainement le processus !
Re : Script pour colorer les cellules dans une configuration DoEVous trouverez ci-dessous un exemple de script (nécessite JMP16 en raison de Transform Each() et For Each())
Names Default To Here(1);
If(Is Empty(Current Data Table()),
Throw("No tables open.");
, // else
dt = Current Data Table();
);
sel_cols = dt << Get Selected Columns();
If(N Items(sel_cols) == 0,
Throw("No columns selected");
);
// color "globals", fairly free to choose which type of "JMP Color" to use
LOW_COLOR = 67;
MIDDLE_COLOR = -13948116;
HIGH_COLOR = "Light Green";
For Each({col_ref}, sel_cols,
col_name = col_ref << get name; // I don't like using :COLNAME format at all
// get values in column
// Associative Array seems to have a bug so we use Summarize
Summarize(dt, val_strs = By(Column(col_name)));
// Summarize returns list of characters, so we will convert them to numbers
vals = Transform Each({val}, val_strs, Num(val));
min_val = Remove From(vals, 1)[1];
max_val = Remove From(vals, -1)[1];
// This method should be fairly robust, but it does looks complicated
weird_jmp_list = {};
Eval(Substitute(Expr(
Insert Into(weird_jmp_list, Expr(_value_ = _color_))
),
Expr(_value_), min_val,
Expr(_color_), LOW_COLOR
));
Eval(Substitute(Expr(
Insert Into(weird_jmp_list, Expr(_value_ = _color_))
),
Expr(_value_), max_val,
Expr(_color_), HIGH_COLOR
));
// color rest with middle color
For Each({val}, vals,
Eval(Substitute(Expr(
Insert Into(weird_jmp_list, Expr(_value_ = _color_))
),
Expr(_value_), val,
Expr(_color_), MIDDLE_COLOR
));
);
Column(dt, col_name) << set property( "Value Colors", weird_jmp_list) << Color Cell By Value(1);
);

Re : Script pour colorer les cellules dans une configuration DoEMerci!
Une solution parfaite qui a fonctionné directement!
Cela devrait en fait faire partie de la plate-forme DOE dans JMP. Est-ce OK que je l'ajoute à la liste de souhaits @jthi ?
Re : Script pour colorer les cellules dans une configuration DoE@Steffen_Bugge bien sûr et je dirais qu'il est recommandé d'écrire de nouvelles idées à la liste de souhaits si elles vous viennent à l'esprit