JMP-Skript: Erstellen eines Diagramms basierend auf einer BenutzerauswahlvariablenHallo zusammen,
Ich möchte ein Diagramm basierend auf einer Benutzerfilterauswahl erstellen.
JMP erkennt die vom Benutzer gewählte Variable „Y“ jedoch nicht und es tritt ein Fehler auf.
Hier ist mein Code:
Y = concat(Y," (ppm)");
graph = RAW_DATA_TABLE <<
Control Chart Builder(
Size( 534, 450 ),
Show Two Shewhart Charts( 0 ),
Show Control Panel( 0 ),
Sort by Row Order( 1 ),
Variables( Y( :"<U><STRONG>Y</STRONG></U>" ),Subgroup( :Numéro de lot ), Phase(:"Period")),
Get Limits(LIMIT_TABLE),
)
Hat jemand einen Vorschlag, der mir bei der Benennung des Y hilft?
Vielen Dank,
Sebastian
Erweiterte statistische ModellierungInhaltsorganisationDatenexploration und -visualisierungVersuchsplanungMassenanpassungRe: JMP SCRIPT: Erstellung eines Diagramms basierend auf einer BenutzerauswahlvariablenIch bin mir nicht ganz sicher, was Sie in Zeile 1 zu tun versuchen. Versuchen Sie, den Spaltennamen basierend auf etwas zu erstellen? Wie wird Y vom Benutzer ausgewählt? Woher kommt das " (ppm)"?
Re: JMP SCRIPT: Erstellung eines Diagramms basierend auf einer BenutzerauswahlvariablenMit dem Befehl Column Dialog() können Benutzer Spalten für Rollen in späteren Analysen auswählen. Sie sollten in der Lage sein, das Beispiel aus dem Skriptindex zu löschen/zu ändern, um das zu erhalten, was Sie benötigen, dh nur die Dinge zu behalten, die sich auf die Spalte "Y" beziehen.

Re: JMP SCRIPT: Erstellung eines Diagramms basierend auf einer BenutzerauswahlvariablenDie Benutzerauswahl basiert auf einer Liste. Die vom Benutzer aus einer Liste getroffene Auswahl stimmt jedoch nicht mit der Datentabelle überein, und ich muss mit " (ppm)" verketten, um den gleichen Variablennamen zu haben ...
Dann möchte ich das Diagramm basierend auf dem "Y" mit "ppm" verketten.
Das "Y" wird jedoch vom Graph Builder nicht erkannt ...
Hast du irgendwelche Vorschläge um mir bei der Benennung des Y zu helfen?
Vielen Dank für Ihre Antwort
Re: JMP SCRIPT: Erstellung eines Diagramms basierend auf einer BenutzerauswahlvariablenWenn Sie sicher sind, dass die Spalte existiert, können Sie versuchen, die Y-Variable (ich würde hier einen aussagekräftigeren Variablennamen verwenden) in Eval zu verpacken
y_column = Concat(Y, " (ppm)");
graph = RAW_DATA_TABLE << Control Chart Builder(
Size(534, 450),
Show Two Shewhart Charts(0),
Show Control Panel(0),
Sort by Row Order(1),
Variables(Y(Eval(y_column)), Subgroup(:Numéro de lot), Phase(:"Period")),
Get Limits(LIMIT_TABLE),
);
Names Default To Here(1);
y_col = "Weight";
dt = Open("$SAMPLE_DATA/Quality Control/Coating.jmp");
dt << Control Chart Builder(Variables(Y(Eval(y_col)), Subgroup(:Sample)));
Re: JMP SCRIPT: Erstellung eines Diagramms basierend auf einer Benutzerauswahlvariablen
Re: JMP SCRIPT: Erstellung eines Diagramms basierend auf einer BenutzerauswahlvariablenZeile 1 Ihres Codes ist keine gute Praxis - Sie definieren Y in Bezug auf sich selbst neu.
Versuche dies:
raw_data_table = New Table( "Test",Add Rows( 4 ),
New Column( "Col1 (ppm)", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3, 4] ) ),
New Column( "Numéro de lot", Character, "Nominal",
Set Values( {"a", "a", "b", "b"} ) ),
New Column( "Period", Numeric, "Continuous", Format( "Best", 12 ),
Set Values( [1, 2, 3, 4] ) )
);
Y = "Col1"; // Selected from your dialog box
ycol = Y || " (ppm)";
graph = RAW_DATA_TABLE <<
Control Chart Builder(
Size( 534, 450 ),
Show Two Shewhart Charts( 0 ),
Show Control Panel( 0 ),
Sort by Row Order( 1 ),
Variables( Y( column(RAW_DATA_TABLE, ycol) ),Subgroup( :Numéro de lot ), Phase(:"Period")),
// Get Limits(LIMIT_TABLE),
);
Ich habe den Verweis auf limit_table auskommentiert, da ich diese Daten nicht hatte.
Re: JMP SCRIPT: Erstellung eines Diagramms basierend auf einer BenutzerauswahlvariablenGroßartig ! das ist genau das, was ich brauche.
Jetzt möchte ich eine Spaltenauswahl basierend auf der y_column treffen, um vom Benutzer nicht gewünschte Spalten zu löschen:
a = {Eval(y_colums)};
limit_table << Invert Column Selection( a );
limit_table << Delete Columns;Es funktioniert jedoch nicht.
Hast du eine Idee, mir zu helfen?
Danke
Sebastian