Hallo,
Anbei eine Datei table1.jmp mit 3 Spalten, die ich zum Zeichnen eines Diagramms verwenden werde. Tabelle2 ist eine Tabelle mit Informationen zu Referenzlinien. Ebenfalls anbei die Datei output_chart.png, die ich erstellen möchte. Ist es möglich, eine JSL-Datei zum Zeichnen eines Diagramms zu schreiben und die Informationen zu den Referenzlinien einzugeben, die für verschiedene Produkte unterschiedlich sind? Ich hätte auch nichts gegen eine andere Möglichkeit, das Diagramm zu zeichnen. Jede Hilfe ist sehr willkommen!
Wenn Sie JMP18 verwenden, ist dies eine weitere Option, die Sie ausprobieren könnten.
Names Default To Here(1);
dt1 = Open("$DOWNLOADS/table1.jmp");
dt2 = Open("$DOWNLOADS/table2.jmp");
gb = dt1 << Graph Builder(
Size(1162, 468),
Show Control Panel(0),
Link Page Axes("Y Only"),
// Replicate Linked Page Axes(0), // would show Y-axis only once
Variables(X(:Date), Y(:Yield), Page(:Product, Levels per Row(3), Show Title(0))),
Elements(Points(X, Y, Legend(4)), Smoother(X, Y, Legend(5)))
);
// get PM list
Summarize(dt1, pms = By(:Product));
// Each X-Group will have its own framebox
// NOTE We assume that PM order is the default one
all_axis = Report(gb) << XPath("//AxisBox");
abs = all_axis[1::N Items(all_axis)::2];
For Each({cur_pm, idx}, pms,
cur_ab = abs[idx];
// Loop over line specifications and set lines
pm_spec_rows = dt2 << get rows where(:Product == cur_pm);
For Each({spec_row}, pm_spec_rows,
val = dt2[spec_row, "Design Change Dates"];
name = dt2[spec_row, "Design Name"];
cur_ab << Add Ref Line(val, "Solid", "Red", name, 1);
);
);
Bei der Verwendung von Page wird ein neuer „Raster“-Stil verwendet. Dadurch können wir für jede Gruppe eine separate X-Achse erstellen.

Sie können die Y-Achse auch nur einmal anzeigen lassen, indem Sie die Einstellung „Verknüpfte Seitenachsen replizieren“ ändern.

Da ich kein Programmierer bin, habe ich etwas anderes ausprobiert. In der beigefügten Datei habe ich in Tabelle 2 eine Spalte für „Neues Produkt“ erstellt und die Tabellen anschließend über das Produkt als Schlüssel verknüpft. Das gespeicherte Diagramm aus dem Graph Builder färbte die Punkte nach dem Designnamen ein, verwendete das Produkt im Feld „Gruppe X“ und wählte sowohl das Datum als auch das Datum der Designänderung als X-Variablen mit der Ausbeute als Y-Variable aus. Ich habe die Markergröße angepasst. Ich denke, die Darstellung ließe sich noch verbessern (zumindest könnte PM3 nach rechts verschoben werden, da es keine Designänderungen gab).