Konturdiagramm, X- und Y-Bereiche in JSL festlegenGibt es beim Erstellen eines Konturdiagramms in JSL eine Möglichkeit, feste (vordefinierte) Werte für das X- und Y-Maximum und -Minimum festzulegen? Das heißt, um den Bereich zu definieren, den das Konturdiagramm abdecken soll, wie dies manuell im Dialogfeld „X-/Y-Achseneinstellungen“ erfolgen kann?
Meine Datensätze decken unterschiedliche Bereiche in x und y ab, aber ich möchte, dass alle Konturdiagramme die gleichen x- und y-Ausdehnungen haben.
Etwas wie:
Contour Plot(
X( :X_col, :Y_col ),
Y( :data ),
X_minimum(-75000),
X_maximum(75000)
)
(Das funktioniert offensichtlich nicht.)
MassenanpassungBetreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenEine einfache Möglichkeit, dies zu tun, besteht möglicherweise darin, Folgendes festzulegen Axis-Eigenschaft für Ihre X- und Y-Spalten. Dadurch wird sichergestellt, dass jeder mit diesen Spalten erstellte Plot die gewünschte Skalierung aufweist.

Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenIhr Ansatz ist eine gute Möglichkeit, damit umzugehen. Oder wenn Sie mit der XPath-Sprache vertraut sind, können Sie diese verwenden
( obj << xpath( "//PictureBox//AxisBox[@charID = '1']")) << Min( 100 ) << Max( 300 ) ;
Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenDanke, Jim, das habe ich gesucht!
Ein kleines Detail: Wie bereits erwähnt, erstelle ich mithilfe des Attributs „Nach“ mehrere Diagramme. Also musste ich alle obj-Elemente durchlaufen:
n = N Items( obj );
For(i = 1, i <= n, i++,
Report( obj[i] )[AxisBox( 1 )] << Min( -75000 ) << Max( 75000 ) << Inc( 25000 );
Report( obj[i] )[AxisBox( 2 )] << Min( -75000 ) << Max( 75000 ) << Inc( 25000 );
);
Das funktioniert, aber lassen Sie es mich bitte wissen, falls es einen eleganteren Weg gibt.
Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenWenn Sie die X-Achsenwerte und nicht die Konturwerte ändern möchten, können Sie diese festlegen, indem Sie die AxisBox-Werte für die X-Achse ändern
.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Little Pond.jmp" );
obj = dt << Contour Plot( X( :X, :Y ), Y( :Z ) );
Report( obj )[AxisBox( 2 )] << Min( 100 ) << Max( 300 );

Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Little Pond.jmp" );
obj = dt << Contour Plot( X( :X, :Y ), Y( :Z ) );
Report( obj )[AxisBox( 2 )] << Min( -100 ) << Max( 400 );
Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenDies funktioniert, jedoch nur mit dem Befehl Specify Contours(). Wenn ich diese Zeile herausnehme, zeichnet das Protokollfenster Folgendes auf:
Cannot find ScaleBox[ "1" ] at {}
Cannot find ScaleBox[ "2" ] at {}Leider möchte ich die Konturgrenzen (in Z) nicht manuell definieren, ich war zufrieden damit, dass JMP dies automatisch erledigt. Mein Datensatz ist ziemlich groß und ich erstelle mehrere Konturdiagramme daraus. Daher ist es möglich, aber etwas umständlich, die Mindest- und Höchstwerte für jedes Diagramm manuell zu berechnen und an den Befehl „Specify Contours()“ zu übergeben.
Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegen
Meinen Sie das mit Gründung?
Was sagt Ihr Protokollfenster?
Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenVielen Dank für die schnelle Antwort, aber das legt den Z-Bereich fest, aber was ich tun möchte, ist die XY-Ausdehnung des Konturdiagramms festzulegen. Ich habe bereits versucht, das Ergebnis des manuellen Vorgangs im Skriptfenster zu speichern, bin aber zu folgendem Ergebnis gekommen:
SendToReport(
Dispatch(
{},
"1",
ScaleBox,
{Min( -75000 ), Max( 75000 ), Inc( 20000 ), Minor Ticks( 0 )}
)
)Ich konnte dies nicht mithilfe von JSL in den Aufruf der Contour Plot-Plattform integrieren.
Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenDie Nachrichten, die an das Konturdiagramm gesendet werden können, sind im Skriptindex unter der Auswahl „Konturdiagramm“ dokumentiert.Was Sie suchen, ist die Meldung „Konturen angeben“.Der einfachste Weg, die Nachrichten zur Verwendung zu bringen, besteht darin, die gewünschte Plattform (Contour Plot) mit den gewünschten Angaben auszuführen und das Skript dann in einem Skriptfenster zu speichern.Es verfügt über die erforderliche JSL, um die von Ihnen angeforderten Einzelheiten auszuführen.
Names Default To Here( 1 );
dt = Open( "$SAMPLE_DATA/Little Pond.jmp" );
obj = dt << Contour Plot( X( :X, :Y ), Y( :Z ) );
obj << Specify Contours(
Min( -4 ),
Max( 8 ),
N( 4 )
);
Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenHallo,
Wenn ich Konturen angebe, z. B. (Min(-2,5), Max(1,5), N(8)).
Ich verstehe die Legende des Skalenbereichs von den Minimal- bis zu den Maximalwerten nicht genau. Warum ist das so und kann ich das ändern?
Außerdem ist der Maßstab für jede Kontur unterschiedlich (es ist pro Gruppe)
Betreff: Konturdiagramm, X- und Y-Bereiche in JSL festlegenEs wäre hilfreich, wenn Sie eine Beispieldatentabelle und Ihr Skript bereitstellen könnten, das das Problem veranschaulicht.