Gestione della visualizzazione condizionale delle variabili dell'asse Y in JSL per la creazione di graficiQuando si usa `graph built`, come posso descrivere il requisito in JSL che certe variabili dell'asse Y, che potrebbero non apparire sempre, debbano essere visualizzate se hanno valori e non visualizzate se non hanno valori? I due metodi seguenti non sono stati efficaci.
1.
dt = Open("$SAMPLE_DATA/Big Class.jmp");
Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :sex ), try(Y( :bbb )), Y( :height ), Y( :weight ) ),
Elements( Position( 1, 1 ), Points( X, Y, Legend( 13 ) ) ),
Elements( Position( 1, 2 ), Points( X, Y, Legend( 14 ) ) ),
Elements( Position( 1, 3 ), Points( X, Y, Legend( 15 ) ) )
);2.
dt = Open("$SAMPLE_DATA/Big Class.jmp");
Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :sex ), Y( :bbb ), Y( :height ), Y( :weight ) ),
Elements( Position( 1, 1 ), Points( X, Y, Legend( 13 ) ) ),
Elements( Position( 1, 2 ), Points( X, Y, Legend( 14 ) ) ),
Elements( Position( 1, 3 ), Points( X, Y, Legend( 15 ) ) )
);Automazione e scriptingRe: Gestione della visualizzazione condizionale delle variabili dell'asse Y in JSL per la creazione di graficiCiao @BabyDoragon , bbb è una colonna che esiste o non esiste ed è questo che dobbiamo controllare, oppure bbb è sempre presente ma mancano alcuni valori (righe)?
Re: Gestione della visualizzazione condizionale delle variabili dell'asse Y in JSL per la creazione di graficiIl valore predefinito di bbb è {} e talvolta può essere memorizzato come variabile, ad esempio nei due casi seguenti.
1.
dt = Open("$SAMPLE_DATA/Big Class.jmp");
bbb={};
bbb="age";
Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :sex ), Y( as column(bbb)), Y( :height ), Y( :weight ) ),
Elements( Position( 1, 1 ), Points( X, Y, Legend( 13 ) ) ),
Elements( Position( 1, 2 ), Points( X, Y, Legend( 14 ) ) ),
Elements( Position( 1, 3 ), Points( X, Y, Legend( 15 ) ) )
);2.
dt = Open("$SAMPLE_DATA/Big Class.jmp");
bbb={};
//bbb="age";
Graph Builder(
Size( 534, 450 ),
Show Control Panel( 0 ),
Variables( X( :sex ), Y( as column(bbb)), Y( :height ), Y( :weight ) ),
Elements( Position( 1, 1 ), Points( X, Y, Legend( 13 ) ) ),
Elements( Position( 1, 2 ), Points( X, Y, Legend( 14 ) ) ),
Elements( Position( 1, 3 ), Points( X, Y, Legend( 15 ) ) )
);Spero di poter consentire al grafico di includere o escludere automaticamente questo elemento in base alla presenza o meno di variabili in bbb.
Re: Gestione della visualizzazione condizionale delle variabili dell'asse Y in JSL per la creazione di graficiPuoi creare l'espressione o aggiungere la variabile in seguito
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
gb = dt << Graph Builder(
Size(534, 450),
Show Control Panel(0),
Variables(X(:sex), Y(:height), Y(:weight)),
Elements(Position(1, 1), Points(X, Y, Legend(13))),
Elements(Position(1, 2), Points(X, Y, Legend(14)))
);
dt << new column("A", Numeric, Continuous, Formula(Row()));
extra_cols = {"height", "A"};
For Each({extra_col}, extra_cols,
Eval(EvalExpr(
gb << Add Variable({Expr(NameExpr(AsColumn(dt, extra_col))), Role("Y")});
));
);
A seconda di cosa si sta cercando di fare, ci possono essere diverse cose da prendere in considerazione (ordine, tipo di grafici, legenda, ...)
Se non ricordo male, questo potrebbe avere qualcosa a che fare con questo argomento Registrazione dello Scripters Club: JSL in Graph Builder