I would like to have an interface which I could use to check different relations between different datatables and reports generated from them. This would help user to track how different data tables and visualisations might be related and possibly also help to visualise the flow needed to reach the end. Of course it would be nice to able to also something from this interface (bring table / table to top for example). This would require JMP to save the relations somewhere, so this should maybe be an option in Preferences. Some example ideas (most likely there are way better visualizations for this): Parallel plot: Using ishikawa: Obsidian notes - graph view graph view: Folder structure: Lazyu example script for parallel and ishikawa. Using something like this would work, but you would have to have your own functions/class to handle subsetting and so on, to get all references. You can also parse some names and link them back (subset and summary). Names Default To Here(1);
demoList = New Table("datatablecollection", New Column("Parent", Character, Nominal), New Column("Child", Character, Nominal));
addToDemoList = Function({_parent, _child, dt = demoList},
{Default Local},
parentName = _parent << get name;
childName = _child << get name;
demoList << Add Row({Parent = parentName, Child = childName});
);
dt = Open("$SAMPLE_DATA/Big Class.jmp", invisible);
dt_subset = dt << Subset(all rows, invisible);
addToDemoList(dt, dt_subset);
dt_subset_subset = dt_subset << Subset(all rows, invisible);
addToDemoList(dt_subset, dt_subset_subset);
dt_subset_summary = dt_subset << Summary(Group(:name, :sex), Freq("None"), Weight("None"), invisible);
addToDemoList(dt_subset, dt_subset_summary);
dt_subset_subset_summary = dt_subset_subset << Summary(Group(:name, :sex), Freq("None"), Weight("None"), invisible);
addToDemoList(dt_subset_subset, dt_subset_subset_summary);
dt_summary = dt << Summary(Group(:name, :sex), Freq("None"), Weight("None"), invisible);
addToDemoList(dt, dt_summary);
obj = demoList << Diagram(Y(:Child), X(:Parent));
Close(dt, no save);
Close(dt_subset, no save);
Close(dt_subset_subset, no save);
Close(dt_summary, no save);
Close(dt_subset_summary, no save);
Close(dt_subset_subset_summary, no save);
_dt = New Table("Untitled 37",
Add Rows(3),
Compress File When Saved(1),
New Column("Column 1", Character, "Nominal", Set Values({"Big Class", "Big Class", "Big Class"})),
New Column("Column 2",
Character,
"Nominal",
Set Values({"Subset of Big Class", "Big Class By (name, sex)", "Subset of Big Class"})
),
New Column("Column 3",
Character,
"Nominal",
Set Values({"Subset of Subset of Big Class", "", "Subset of Big Class By (name, sex)"})
),
New Column("Column 4", Character, "Nominal", Set Values({"Subset of Subset of Big Class", "", ""}))
);
parallelPlot = _dt << Graph Builder(
Size(495, 450),
Show Control Panel(0),
Variables(X(:Column 1), X(:Column 2, Position(1)), X(:Column 3, Position(1)), X(:Column 4, Position(1)), Color(:Column 1)),
Elements(Parallel(X(1), X(2), X(3), X(4), Legend(3)))
);
... View more