Ri: Display Box: Livello?Che ne dici di usare Get Display Path ()? Ottieni percorso di visualizzazione () ottiene un'espressione relativa per navigare tra la casella principale e l'oggetto. Se vuoi contare il numero di genitori per arrivare al genitore in cima, prova a seguire jsl.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
biv = dt << Bivariate( Y( :weight ), X( :height ), Fit Line );
rpt = Report( biv );
rootParent = rpt << Top Parent();
path_to_parent = rpt[number col Box( 9 )] << Get Display Path( rootParent, Mode( "Subscript" ) );
count = N Items( Words( Char( Eval Expr( path_to_parent ) ), "," ) );
Ri: Display Box: Livello?Ho avuto la stessa idea 
Ma sembra che a volte Ottieni percorso di visualizzazione non va per gradi:
New window("test",Panel Box("1",Panel box("2",PanelBox("3",HList Box(Spacer Box(100),Text Box("4"),V List Box(Text Box("5"),Spacer Box(Size(100,100)),tb=Text Box("6")))))));
rootParent = tb << Top Parent();
path_to_parent = tb << Get Display Path( rootParent, Mode( "Subscript" ) );
count = N Items( Words( Char( Eval Expr( path_to_parent ) ), "," ) );
Ri: Display Box: Livello?Sulla base dell'indice di scripting, lo scopo di <
XPath o la funzione ricorsiva potrebbero essere abbastanza facili da implementare (non ho idea se funzionerà sempre, alcune piattaforme in JMP possono essere piuttosto complicate e alcuni elementi potrebbero non essere catturati)
Names Default To Here(1);
nw = New Window("test", // 6
Panel Box("1", // 5
Panel Box("2", // 4
Panel Box("3", // 3
H List Box( // 2
Spacer Box(100),
Text Box("4"),
V List Box( // 1
Text Box("5"),
Spacer Box(Size(100, 100)),
tb = Text Box("6") // 0
)
)
)
)
)
);
get_parents = function({elem, idx = 0},
next_elem = elem << parent;
If(Is Empty(next_elem),
return(idx);
);
idx++;
show(next_elem << class name);
get_parents(next_elem, idx);
);
show(get_parents(tb)); // has also the headbox
parent_count = N Items(nw << XPath("//TextBox[text() = '6']/ancestor::*"));
Ri: Display Box: Livello?Grazie per la risposta.
Che ne dici del seguente script? Lo script ripete la funzione genitore finché non raggiunge il genitore superiore.
nw = New Window( "test",
pb1 = Panel Box( "1",
pb2 = Panel Box( "2",
pb3 = Panel Box( "3",
H List Box(
Spacer Box( 100 ),
tb4 = Text Box( "4" ),
V List Box(
tb5 = Text Box( "5" ),
Spacer Box( Size( 100, 100 ) ),
tb6 = Text Box( "6" )
)
)
)
)
)
);
//count parent display box from target to top display box
count parent = Function( {nw, target, top}, //window, target display box, top display box
top_parent = top;
end = 0;
current = target;
displaybox_list = {};
For( i = 1, And( end == 0, i < 100 ), i++,
parent = current << parent();
If( Is Empty( parent ),
end = 1,
current = parent;
Insert Into( displaybox_list, current );
If( top_parent == current,
end = 1
);
);
);
Eval List( {i - 1, displaybox_list} );
);
{count, displaybox_list} = count parent( nw, tb6, pb1 );
show(count);Ri: Display Box: Livello?Grazie.
L'ho appena provato con un albero leggermente diverso e ho ottenuto un overflow dello stack.
Qui la funzione genitore non si arrampica sull'albero?!
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
New Window( "test",
H List Box( Panel Box(
"", H List Box( Text Box( "Hallo" ), tb = Filter Col Selector() ) ) ) );
get_parents = Function( {elem, idx = 0},
next_elem = elem << parent;
If( Is Empty( next_elem ),
Return( idx )
);
idx++;
Print( idx );
Show( next_elem << class name );
get_parents( next_elem, idx );
);
Show( get_parents( tb ) );Ri: Display Box: Livello?Se dovessi indovinare, raggiunge il selettore di colonne del filtro e inizia dall'inizio per qualche motivo (secondo me, Filter Col Selector è una delle caselle di visualizzazione più buggate e fastidiose con cui lavorare in JMP). XPath potrebbe ancora funzionare, ma la query può essere più fastidiosa da creare.
Ri: Display Box: Livello?OK,
vediamo ...
Caso TS-00034009
Ri: Display Box: Livello?Grazie per aver segnalato il problema! Posso confermare che lo sviluppo lo ha ricevuto e ha già apportato alcuni miglioramenti al comportamento di questi messaggi della casella di visualizzazione per la prossima versione principale di JMP.Casella di visualizzazione: livello?È un comando per ottenere il livello/profondità (?) di una casella di visualizzazione, ovvero il numero di genitori per arrivare al genitore superiore?
Modellazione statistica avanzataRe: Display Box: Livello?Grazie per averlo sistemato.