Ottieni il testo dalla piattaforma di segnalazioneCiao,
Qualcosa con cui ho lottato molto è come farlo Ottenere *qualcosa* dalle piattaforme. In questo caso, è l'equazione di adattamento lineare appena sotto "Linear Fit". I menu Proprietà e Mostra struttura ad albero mostrano entrambi caselle di uscita di testo diverse, quindi ho provato a catturarle entrambe e ad usarle Ottenere (che non è riconosciuto dalla piattaforma, o forse solo dall'oggetto), e Ottieni testo . Entrambi non afferrano il testo di cui ho bisogno. Qualche idea?
Un altro problema è che vengono generati 6 report, dove dovrebbero essere 2 di essi, poiché il riepilogo crea un elenco di valori univoci in :sex e questo è quante volte il ciclo for sta iterando. Anche il report viene filtrato per questi valori.
Names default to here(1);
clear log();
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
summarize( gen_lst = by( dt:sex ) );
for( i = 1, i <= N Items( gen_lst ), i++,
// Create visualization, save to target
vis = eval expr( eval(
Bivariate(
Y( :weight ),
X( :height ),
Where( :sex == expr( gen_lst[i] ) )
)
) );
// Fit: Linear
vis << Fit Line( {Line Color( {255, 000, 000} )} );
// Tries to copy equation in "Linear Fit"
try( eqs_tmp1 = report(vis)["Linear Fit", TextEditBox(1)] << Get text );
try( eqs_tmp4 = report(vis)[TextEditBox(4)] << Get text );
try( print( eqs_tmp1 ) );
try( print( eqs_tmp4 ) );
);

Automazione e scriptingAnalisi e modellazione dei dati di baseEsplorazione e visualizzazione dei datifinestreRi: Ottieni il testo dalla piattaforma di segnalazionePenso che dovrebbe essere
Eval(Eval Expr(...
In alternativa, puoi utilizzare By:
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
vis = Bivariate( Y( :weight ), X( :height ), By( :sex ) );
vis << Fit Line( {Line Color( {255, 000, 000} )} );
(vis << XPath( "//OutlineBox[text()='Linear Fit']//TextEditBox" )) << get text;
Ri: Ottieni il testo dalla piattaforma di segnalazioneGrazie per la rapida risposta, Hogi!
Il codice alternativo prende troppo testo per i miei gusti, come mostrato nello screenshot.Sto cercando specificamente di afferrare l'equazione.
Tuttavia, grazie per aver notato che ho capovolto eval ed eval expr! Questo ha risolto completamente il problema! Posso usare il primo o il secondo try() per ottenere le equazioni che sto cercando.

Ri: Ottieni il testo dalla piattaforma di segnalazionesul mio sistema (v17.1):

Hm, mi chiedo cosa potrebbe fare la differenza?
Ri: Ottieni il testo dalla piattaforma di segnalazioneCi sono meno parentesi nel tuo screenshot, giusto?
Quindi, il testo get viene reindirizzato direttamente a vis e restituisce il report completo.
Ri: Ottieni il testo dalla piattaforma di segnalazioneEcco alcune altre opzioni che potresti utilizzare. Userei la prima opzione qui o XPath
Names Default To Here(1);
dt = Open("$SAMPLE_DATA/Big Class.jmp");
Summarize(gen_lst = by(dt:sex));
For(i = 1, i <= N Items(gen_lst), i++,
// Create visualization, save to target
vis = Eval(Eval Expr(Bivariate(Y(:weight), X(:height), Where(:sex == Expr(gen_lst[i])))));
// Fit: Linear
vis << Fit Line({Line Color({255, 000, 000})});
txt1 = Report(vis)[OutlineBox("Linear Fit"), Text Edit Box(1)] << get text; // I would use this or XPath
txt2 = Report(vis)["Linear Fit", Text Edit Box(1)] << get text;
txt3 = ((Report(vis)[OutlineBox("Linear Fit")] << Child) << child) << get text;
);