Versione breve: nello screenshot allegato "X Axis Settings.JPG" in basso c'è un campo "Valore" accanto a "Etichetta". Come posso leggere quei valori da un asse X in uno script JSL?
Nota: la funzione obj << Tick Label List() può essere utilizzata per impostare ciò che desidero, ma ho bisogno di un modo per leggerlo .
Versione lunga:
Per poter tracciare una linea nel mio grafico tramite "Aggiungi annotazione linea" che non attraversi l'intera larghezza del grafico, ma solo una parte dell'asse X, devo conoscere la larghezza di quella parte dell'asse X.
Nel mio script ho accesso ad AxisBox. Questo AxisBox ora ha 3 righe di etichette dell'asse, che non fanno parte della struttura ad albero.
L'ultima riga di etichette dell'asse ha due etichette (o valori). Ora il valore della prima etichetta è 0,5 e il valore della seconda etichetta è 2.
Posso trovare la larghezza dell'intero AxisBox, che naturalmente è anche la larghezza delle Axis Label Rows. Se potessi combinare la larghezza con i valori dell'etichetta avrei la lunghezza della mia linea.
Come posso trovare i valori delle mie etichette?
Ho allegato uno screenshot del mio grafico. Si tratta della riga 3 etichetta 1 e della riga 3 etichetta 2.
Una seconda schermata mostra le impostazioni dell'asse X con i valori menzionati per le etichette.
Mi aspettavo qualcosa del tipo:
myAxisBox = myReport[axis box( 1 )];
myLabelRow = myAxisBox[Label Row( 3 )];
myValues = myLabelRow << Get Values;
Ma poiché le righe delle etichette non fanno parte della struttura ad albero, ciò non è possibile.
Beh, speravo ci fosse un metodo più diretto, ma ho finito per sommare tutte le combinazioni univoche nella tabella che sarebbero state visualizzate sull'asse. In questo modo posso prevedere come sarebbe l'asse.
list_value_order = Argomento ( Argomento ( Colonna ( dt, "Nome colonna" ) << Ottieni proprietà ( "Ordine valore" ), 1 ), 1 );
Restituisce un elenco degli ordini di valore (in ordine) se è stato stabilito tramite ordine personalizzato... Non so se questo aiuta... e 3 anni dopo!