Achse miteinander verknüpfen oder verriegeln?Hallo,
Ich bin ein relativ neuer JMP- und JSL-Benutzer und versuche, einen Bericht mit mehreren Diagrammen zu erstellen. Ich möchte die x-Achse beider Diagramme miteinander verknüpfen, sodass sich auch die andere Achse ändert, wenn eine x-Achse skaliert oder anderweitig geändert wird (Referenzlinie hinzugefügt usw.).
Einige der integrierten Plattformen tun dies bereits, beispielsweise das Kontrolldiagramm, das die x-Achse für die Diagramme „Einzelmessung“ und „Gleitender Bereich“ verknüpft.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Control Chart( Chart Col( Height, "Individual
Measurement", "Moving Range" ), K Sigma( 3 ) );
Wie kann ich dies für meine eigenen Berichte/benutzerdefinierten Plattformen usw. reproduzieren? Ich konnte nicht herausfinden, wie der Kontrolldiagrammbericht dies erreicht, obwohl ich mir die Baumstruktur und die Eigenschaften für die Anzeigefelder angesehen habe.
Wie könnte ich beispielsweise die beiden x-Achsen im folgenden Bericht mithilfe von JSL verknüpfen?
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
dt << Distribution(
Stack( 1 ),
Continuous Distribution(
Column( :height ),
Horizontal Layout( 1 ),
Vertical( 0 ),
Count Axis( 1 )
),
By( :sex )
);
Ich verwende JMP 13.2.
Danke!
MassenanpassungBetreff: Achse miteinander verbinden oder sperren?Jim hat hier eine hervorragende Beispiellösung gepostet: Ein einfaches Skript zur Veranschaulichung von Achsenänderungen in einem Diagramm und zur Steuerung der Achse in einem anderen Diagramm
Betreff: Achse miteinander verbinden oder sperren?Jim, danke.
Ich glaube nicht, dass dies dieselbe Methode ist, die die „integrierten“ Berichte und Plattformen verwenden, da ich in den Eigenschaften keine Grafikskripts sehe, wenn ich die integrierten Diagramme und Achsen inspiziere. Ich vermute, dass sie eine versteckte API verwenden, die nicht dokumentiert ist.
Ich denke jedoch, dass Ihre Methode eine akzeptable Lösung ist, die in den meisten Fällen funktionieren sollte. Die Leistung ist nicht großartig, aber es funktioniert. Danke!
Betreff: Achse miteinander verbinden oder sperren?Sie können dem Rahmen box() ein Skript hinzufügen, das Änderungen in der Axis Box() erkennen und dann alle Achsen auf die neuen Werte der zurückgesetzten Axis Box() zurücksetzen kann.
Weitere Informationen finden Sie im Skriptindex.
Normalerweise verwende ich in der Frame Box << Add Graphics Script eine Überprüfung des X-Ursprungs und der X-Bereichsänderung in der Axis Box().
Betreff: Achse miteinander verbinden oder sperren?Stoßen. Irgendwelche anderen Ideen dazu? Sicherlich gibt es eine API/JSL, die die integrierten Plattformen verwenden, um dies zu erreichen?
Betreff: Achse miteinander verbinden oder sperren?Stan,
Danke für die Antwort. Dadurch scheinen die Maßstäbe anfangs gleich zu sein, aber wenn ich eine der Achsen ergreife und den Maßstab ändere, werden die anderen Achsen nicht aktualisiert, was ich erreichen wollte. Das heißt, ich hoffe, sie so zu verknüpfen, dass sie immer synchron miteinander sind, wie beim Bericht der Control Chart-Plattform.
Irgendwelche anderen Ideen?
- Erik
Betreff: Achse miteinander verbinden oder sperren?Hallo @ErikSwan ,
Ich denke, Sie könnten möglicherweise eine einheitliche Skalierung verwenden.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Blood Pressure.jmp" );
obj = Distribution( Column( :BP 8M, :BP 12M, :BP 6M, :BP 8W, :BP 12W ) );
obj << Uniform Scaling( 1 );
obj << Lock Scales( 1 );
obj << Stack( 1 );
Uniform ScalingUniform ScalingEinheitliche Skalierung
Prost,
Stan