Kurzfassung: Im angehängten Screenshot "X Axis Settings.JPG" unten gibt es neben "Label" ein Feld "Value". Wie kann ich diese Werte in einem JSL-Skript aus einer X-Achse auslesen?
Hinweis: Mit der Funktion obj << Tick Label List() kann ich das gewünschte festlegen , aber ich brauche eine Möglichkeit, es zu lesen .
Lange Version:
Um in meinem Diagramm über „Linienanmerkung hinzufügen“ eine Linie zu zeichnen, die nicht über die gesamte Breite des Diagramms verläuft, sondern nur über einen Teil der X-Achse, muss ich die Breite dieses Teils der X-Achse kennen.
In meinem Skript habe ich Zugriff auf die AxisBox. Diese AxisBox hat jetzt 3 Achsenbeschriftungszeilen, die nicht Teil der Baumstruktur sind.
Die letzte Achsenbeschriftungszeile hat zwei Beschriftungen (oder Werte). Jetzt ist der Wert der ersten Beschriftung 0,5 und der Wert der zweiten Beschriftung ist 2.
Ich kann die Breite der gesamten Achsenbox ermitteln, die natürlich auch der Breite der Achsenbeschriftungszeilen entspricht. Wenn ich die Breite mit den Beschriftungswerten kombinieren könnte, hätte ich die Länge meiner Zeile.
Wie kann ich die Werte meiner Etiketten finden?
Ich habe einen Screenshot meines Diagramms angehängt. Es geht um Zeile 3, Beschriftung 1 und Zeile 3, Beschriftung 2.
Ein zweiter Screenshot zeigt die X-Achsen-Einstellungen mit den genannten Werten für die Beschriftungen.
Ich habe so etwas erwartet wie:
myAxisBox = myReport[axis box( 1 )];
myLabelRow = myAxisBox[Label Row( 3 )];
myValues = myLabelRow << Get Values;
Da die Beschriftungszeilen jedoch nicht Teil der Baumstruktur sind, ist dies nicht möglich.
Nun, ich hatte gehofft, dass es eine direktere Methode geben würde, aber am Ende addierte ich alle eindeutigen Kombinationen in der Tabelle, die auf der Achse angezeigt würden. Auf diese Weise kann ich vorhersagen, wie die Achse aussehen würde.
list_value_order = Arg ( Arg ( Spalte ( dt, "Spaltenname" ) << Eigenschaft abrufen ( "Wertereihenfolge" ), 1 ), 1 );
Gibt eine Liste der Wertreihenfolgen (in der richtigen Reihenfolge) zurück, wenn sie über eine benutzerdefinierte Reihenfolge erstellt wurde … Ich weiß nicht, ob das hilft … und 3 Jahre später!