- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Save the interactive plots/reports
I have an interactive report in JMP, and I want to save it so that when I reopen it, all the filters and settings are preserved. Currently, I find that I need to reapply the local filters near the charts every time I reopen the report. How can I save the report in a way that retains all the filters and settings when I reopen it?
2 REPLIES 2
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Save the interactive plots/reports
What does your report look like? How are you saving it?
I have a report like this
And if I save it as .jrp (with embedded data), it will open like this
This can also be seen from the script
View more...
Local Here(
(table1 = New Table("Big Class",
Add Rows(40),
Compress File When Saved(1),
New Script(
["en" => "Distribution",
"ja" => "一変量の分布",
"x-id" => "S_Distribution_Scp",
"zh-CN" => "分布"],
Distribution(
Continuous Distribution(Column(:weight)),
Nominal Distribution(Column(:age))
)
),
New Script(
["en" => "Bivariate",
"ja" => "二変量の関係(二変量)",
"x-id" => "S_Bivariate_Scp",
"zh-CN" => "二元"],
Bivariate(Y(:weight), X(:height), Fit Line)
),
New Script(
["en" => "Oneway",
"ja" => "二変量の関係(一元配置)",
"x-id" => "S_Oneway_Scp",
"zh-CN" => "单因子"],
Oneway(Y(:height), X(:sex), Means(1), Mean Diamonds(1))
),
New Script(
["en" => "Logistic",
"ja" => "二変量の関係(ロジスティック)",
"x-id" => "S_Logistic_Scp",
"zh-CN" => "Logistic"],
Logistic(Y(:age), X(:weight))
),
New Script(
["en" => "Contingency",
"ja" => "二変量の関係(分割表)",
"x-id" => "S_Contingency_Scp",
"zh-CN" => "列联"],
Contingency(
Y(:age),
X(:sex),
Crosstabs(
Count(1),
Total %(1),
Col %(1),
Row %(1),
Expected(0),
Deviation(0),
"Cell Chi^2"n(0)
)
)
),
New Script(
["en" => "Fit Model",
"ja" => "モデルのあてはめ",
"x-id" => "S_Fit_Model_Scp",
"zh-CN" => "拟合模型"],
Fit Model(
Y(:weight),
Effects(:age, :sex, :height),
Personality("Standard Least Squares"),
Run(
:weight << {Plot Actual by Predicted(1),
Plot Residual by Predicted(1), Plot Effect Leverage(1)}
)
)
),
New Script(
["en" => "Set Sex Value Labels",
"ja" => "性別に値ラベルをセット",
"x-id" => "S_Set_Sex_Value_Labels_Scp",
"zh-CN" => "设置性别值标签"],
Column("sex") << ValueLabels({"M", "F"}, {"Male", "Female"});
Column("sex") << UseValueLabels;
),
New Script(
["en" => "Set Age Value Labels",
"ja" => "年齢に値ラベルをセット",
"x-id" => "S_Set_Age_Value_Labels_Scp",
"zh-CN" => "设置年龄值标签"],
Column("age") << ValueLabels(
{12, 13, 14, 15, 16, 17},
{"Twelve", "Thirteen", "Fourteen", "Fifteen", "Sixteen", "Seventeen"
}
);
Column("age") << UseValueLabels;
),
New Script(
["en" => "Graph Builder Smoother Line",
"ja" => "グラフビルダー 平滑線",
"x-id" => "S_Big_Class_Graph_Builder_Smoother_Line_Scp",
"zh-CN" => "图形生成器: 平滑线"],
Graph Builder(
Show Control Panel(0),
Variables(X(:height), Y(:weight), Overlay(:sex)),
Elements(Points(X, Y, Legend(1)), Smoother(X, Y, Legend(2)))
)
),
New Script(
["en" => "Graph Builder Line and Bar Charts",
"ja" => "グラフビルダー 折れ線・棒",
"x-id" => "S_Big_Class_Graph_Builder_Line_and_Bar_Chart_Scp",
"zh-CN" => "图形生成器: 线图和条形图"],
Graph Builder(
Show Control Panel(0),
Variables(
X(:age, Size(15, 20)),
Y(:height, Size(38, 36)),
Y(:weight)
),
Elements(
Position(1, 1),
Line(X, Y, Legend(1), Row order(0), Summary Statistic("Mean"))
),
Elements(
Position(1, 2),
Bar(
X,
Y,
Legend(2),
Bar Style("Side by side"),
Summary Statistic("Mean")
)
)
)
),
New Script(
["en" => "Graph Builder Line Chart",
"ja" => "グラフビルダー 折れ線",
"x-id" => "S_Big_Class_Graph_Builder_Line_Chart_Scp",
"zh-CN" => "图形生成器: 线图"],
Graph Builder(
Show Control Panel(0),
Variables(X(:age), Y(:height), Overlay(:sex)),
Elements(
Line(X, Y, Legend(3), Row order(0), Summary Statistic("Mean")),
Points(X, Y, Legend(4), Jitter(1))
),
SendToReport(
Dispatch({}, "400", ScaleBox,
{Legend Model(
4,
Base(0, 0, 0),
Base(1, 0, 1),
Properties(0, {Marker("Plus")}),
Properties(1, {Marker("Square")})
)}
)
)
)
),
New Script(
["en" => "Graph Builder Heatmap",
"ja" => "グラフビルダー ヒートマップ",
"x-id" => "S_Big_Class_Graph_Builder_Heat_Map_Scp",
"zh-CN" => "图形生成器: 热图"],
Graph Builder(
Show Control Panel(0),
Variables(X(:age), Y(:sex)),
Elements(Heatmap(X, Y, Legend(2)))
)
),
New Script(
["en" => "JMP Application: Six Quality Graphs",
"ja" => "JMPアプリケーション: 品質を表す6つのグラフ",
"x-id" => "S_Big_Class_JMP_Application_Capability_2_Scp",
"zh-CN" => "JMP 应用程序: 六个质量图形"],
JMP App(
Set Name("Application"),
Set Description("Description"),
Auto Launch(1),
Snap To Grid(1),
Show Grid(1),
Show Properties(1),
Show Sources(0),
Group By Category(1),
Dashboard Mode(0),
Parameters,
Tables(
DataTable1 = GuiTable(
Set Path("$SAMPLE_DATA/Big Class.jmp"),
Set Label("DataTable1"),
Set Location("Current Data Table"),
Set Invisible(0)
)
),
Script(JSL Quote(// This script is executed when the application is run.
// Named objects have been created for the application modules
// (for example, "Module1") and the pre-defined object
// "thisApplication" refers to the application object itself.
// Variables and functions declared here are scoped to the
// Application namespace.
) ),
Allocate(
Module1 = Plan(
PreAllocate,
Script(JSL Quote(// This script is executed when a new module instance is
// created. The pre-defined object "thisModuleInstance" refers
// to the instance object, but other objects such as boxes and
// scripts have not yet been created. Variables declared here are
// scoped to the ModuleInstance namespace.
// This special function will receive parameters passed to CreateInstance()
OnModuleLoad({},
);
thisModuleInstance << Create Objects;
// After this point your module instance objects have been created
// and can be referred to by name (for example, "Button1").
) ),
Allocate(
Outline1 = Outline Box("");
List1 = V List Box();
Report2 = Platform(
DataTable1,
Control Chart(
Sample Size(5),
KSigma(3),
Chart Col(:height, XBar, R),
SendToReport(
Dispatch({"XBar of height"},
"Control Chart Limits frame", FrameBox,
{Frame Size(64, 208)}
),
Dispatch({"R of height"},
"Control Chart Limits frame", FrameBox,
{Frame Size(64, 208)}
)
)
)
);
Report3 = Platform(
DataTable1,
Control Chart(
Sample Size(5),
KSigma(3),
Chart Col(
:height,
XBar(Box Plots(1), Connect Points(0))
),
SendToReport(
Dispatch({"XBar of height"},
"Variables Control Chart of XBar",
FrameBox,
{Frame Size(313, 162),
DispatchSeg(
Box Plot Seg(1),
{Confidence Diamond(1),
Line Color("Light Gray")}
),
DispatchSeg(
Box Plot Seg(2),
{Confidence Diamond(1),
Line Color("Light Gray")}
),
DispatchSeg(
Box Plot Seg(3),
{Confidence Diamond(1),
Line Color("Light Gray")}
),
DispatchSeg(
Box Plot Seg(4),
{Confidence Diamond(1),
Line Color("Light Gray")}
),
DispatchSeg(
Box Plot Seg(5),
{Confidence Diamond(1),
Line Color("Light Gray")}
),
DispatchSeg(
Box Plot Seg(6),
{Confidence Diamond(1),
Line Color("Light Gray")}
),
DispatchSeg(
Box Plot Seg(7),
{Confidence Diamond(1),
Line Color("Light Gray")}
),
DispatchSeg(
Box Plot Seg(8),
{Confidence Diamond(1),
Line Color("Light Gray")}
)}
),
Dispatch({"XBar of height"},
"Control Chart Limits frame", FrameBox,
{Frame Size(64, 162)}
)
)
)
);
Report1 = Platform(
DataTable1,
Distribution(
Continuous Distribution(
Column(:height),
Quantiles(0),
Summary Statistics(0),
Outlier Box Plot(0),
Normal Quantile Plot(1),
Capability Analysis(
LSL(55),
USL(70),
Target(63)
)
)
)
);
),
Organize(
Reparent(Outline1(Report1));
Reparent(List1(Report3));
Reparent(List1(Report2));
Reparent(Outline1(List1));
Relocate(Outline1(0, 0));
),
Initialize(
Outline1 << Background Color(2147483647);
Outline1 << Border(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Outline1 << Enabled(1);
Outline1 << Horizontal Alignment("Default");
Outline1 << Margin(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Outline1 << Padding(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Outline1 << Text Color(2147483647);
Outline1 << UI Only(0);
Outline1 << Vertical Alignment("Default");
Outline1 << Visibility("Visible");
Outline1 << Set Min Size(1139, 1030);
Outline1 << Set Max Size(1139, 1030);
Outline1 << Set Stretch({"Neutral", "Neutral"});
Outline1 << Set Title("Six Quality Graphs");
Outline1 << SetHorizontal(1);
Outline1 << SetOpen(1);
Outline1 << Outline Close Orientation("Auto");
Outline1 << Set Allow Title Wrapping(1);
Outline1 << Set Base Font("Title");
Outline1 << Set Font Scale(1);
List1 << Background Color(2147483647);
List1 << Border({Left(0), Top(0), Right(0), Bottom(0)});
List1 << Enabled(1);
List1 << Horizontal Alignment("Default");
List1 << Margin({Left(0), Top(0), Right(0), Bottom(0)});
List1 << Padding({Left(0), Top(0), Right(0), Bottom(0)});
List1 << Text Color(2147483647);
List1 << UI Only(0);
List1 << Vertical Alignment("Default");
List1 << Visibility("Visible");
List1 << Set Min Size(501, 985);
List1 << Set Max Size(501, 985);
List1 << Set Stretch({"Neutral", "Neutral"});
List1 << set horizontal(0);
Report2 << Background Color(2147483647);
Report2 << Border(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report2 << Enabled(1);
Report2 << Horizontal Alignment("Default");
Report2 << Margin(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report2 << Padding(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report2 << Text Color(2147483647);
Report2 << UI Only(0);
Report2 << Vertical Alignment("Default");
Report2 << Visibility("Visible");
Report2 << Set Min Size(481, 642);
Report2 << Set Max Size(481, 642);
Report2 << Set Stretch({"Neutral", "Neutral"});
Report2 << set horizontal(0);
Report3 << Background Color(2147483647);
Report3 << Border(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report3 << Enabled(1);
Report3 << Horizontal Alignment("Default");
Report3 << Margin(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report3 << Padding(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report3 << Text Color(2147483647);
Report3 << UI Only(0);
Report3 << Vertical Alignment("Default");
Report3 << Visibility("Visible");
Report3 << Set Min Size(481, 303);
Report3 << Set Max Size(481, 303);
Report3 << Set Stretch({"Neutral", "Neutral"});
Report3 << set horizontal(0);
Report1 << Background Color(2147483647);
Report1 << Border(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report1 << Enabled(1);
Report1 << Horizontal Alignment("Default");
Report1 << Margin(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report1 << Padding(
{Left(0), Top(0), Right(0), Bottom(0)}
);
Report1 << Text Color(2147483647);
Report1 << UI Only(0);
Report1 << Vertical Alignment("Default");
Report1 << Visibility("Visible");
Report1 << Set Min Size(585, 699);
Report1 << Set Max Size(585, 699);
Report1 << Set Stretch({"Neutral", "Neutral"});
Report1 << set horizontal(0);
)
)
),
Initialize(
Module1 << Auto Launch(1);
Module1 << Set Module Type("Report");
Module1 << Set Window Title("^TABLENAME - ^APPNAME");
)
) << Run
),
New Column(
["en" => "name", "ja" => "名前", "x-id" => "S_name_Col", "zh-CN" => "姓名"],
Character,
"Nominal",
Set Property(
"Notes",
["en" => "...usually used as a label variable in plots",
"ja" => "散布図のラベル変数として使用する。",
"x-id" => "S_usually_used_as_a_label_variable_Not",
"zh-CN" => "...通常用作图中的标签变量"]
),
Set Values(
{"KATIE", "LOUISE", "JANE", "JACLYN", "LILLIE", "TIM", "JAMES",
"ROBERT", "BARBARA", "ALICE", "SUSAN", "JOHN", "JOE", "MICHAEL",
"DAVID", "JUDY", "ELIZABETH", "LESLIE", "CAROL", "PATTY",
"FREDERICK", "ALFRED", "HENRY", "LEWIS", "EDWARD", "CHRIS",
"JEFFREY", "MARY", "AMY", "ROBERT", "WILLIAM", "CLAY", "MARK",
"DANNY", "MARTHA", "MARION", "PHILLIP", "LINDA", "KIRK", "LAWRENCE"}
),
Set Display Width(0)
),
New Column(
["en" => "age", "ja" => "年齢", "x-id" => "S_age_Col", "zh-CN" => "年龄"],
Numeric,
"Ordinal",
Format("Fixed Dec", 5, 0),
Set Property(
"Notes",
["en" => "Explore data adventurously",
"ja" => "年齢別にデータを探索する。",
"x-id" => "S_Explore_data_adventurously_Not",
"zh-CN" => "大胆地探究数据"]
),
Set Values(
[12, 12, 12, 12, 12, 12, 12, 12, 13, 13, 13, 13, 13, 13, 13, 14, 14,
14, 14, 14, 14, 14, 14, 14, 14, 14, 14, 15, 15, 15, 15, 15, 15, 15,
16, 16, 16, 17, 17, 17]
),
Set Display Width(0)
),
New Column(
["en" => "sex", "ja" => "性別", "x-id" => "S_sex_Col", "zh-CN" => "性别"],
Character(1),
"Nominal",
Set Property(
"Notes",
["en" => "Explore data adventurously",
"ja" => "性別でデータを探索する。",
"x-id" => "S_Explore_data_adventurously_2_Not",
"zh-CN" => "大胆地探究数据"]
),
Set Values(
{"F", "F", "F", "F", "F", "M", "M", "M", "F", "F", "F", "M", "M",
"M", "M", "F", "F", "F", "F", "F", "M", "M", "M", "M", "M", "M", "M",
"F", "F", "M", "M", "M", "M", "M", "F", "F", "M", "F", "M", "M"}
),
Set Display Width(0)
),
New Column(
["en" => "height",
"ja" => "身長(インチ)",
"x-id" => "S_height_Col",
"zh-CN" => "身高"],
Numeric,
"Continuous",
Format("Fixed Dec", 5, 0),
Set Property(
"Notes",
["en" => "Explore data adventurously",
"ja" => "データを探索する。二変量の関係のXに指定する。",
"x-id" => "S_Explore_data_adventurously_3_Not",
"zh-CN" => "大胆地探究数据"]
),
Set Values(
[59, 61, 55, 66, 52, 60, 61, 51, 60, 61, 56, 65, 63, 58, 59, 61, 62,
65, 63, 62, 63, 64, 65, 64, 68, 64, 69, 62, 64, 67, 65, 66, 62, 66,
65, 60, 68, 62, 68, 70]
),
Set Display Width(0)
),
New Column(
["en" => "weight",
"ja" => "体重(ポンド)",
"x-id" => "S_Big_Class_weight_Col",
"zh-CN" => "体重"],
Numeric,
"Continuous",
Format("Fixed Dec", 5, 0),
Set Property(
"Notes",
["en" => "Explore data adventurously",
"ja" => "データを探索する。二変量の関係のYに指定する。",
"x-id" => "S_Explore_data_adventurously_4_Not",
"zh-CN" => "大胆地探究数据"]
),
Set Values(
[95, 123, 74, 145, 64, 84, 128, 79, 112, 107, 67, 98, 105, 95, 79,
81, 91, 142, 84, 85, 93, 99, 119, 92, 112, 99, 113, 92, 112, 128,
111, 105, 104, 106, 112, 115, 128, 116, 134, 172]
),
Set Display Width(0)
),
Set Label Columns(:name)
)) << Run Formulas;
table1 << Graph Builder(
Variables(X(:weight), Y(:height)),
Elements(Points(X, Y, Legend(7)), Smoother(X, Y, Legend(8))),
Local Data Filter(Add Filter(columns(:sex), Where(:sex == "M")))
);
)
table1 << Graph Builder(
Variables(X(:weight), Y(:height)),
Elements(Points(X, Y, Legend(7)), Smoother(X, Y, Legend(8))),
Local Data Filter(Add Filter(columns(:sex), Where(:sex == "M")))
);
-Jarmo
- Mark as New
- Bookmark
- Subscribe
- Mute
- Subscribe to RSS Feed
- Get Direct Link
- Report Inappropriate Content
Re: Save the interactive plots/reports
Using a local data filter- like Jarmo does - is much better than using a global data filter.
One of the benefits: the settings get saved with the plot.
Besides saving the report as a rpt file, please consider saving the report as a script to the data table
One of the benefits: the settings get saved with the plot.
Besides saving the report as a rpt file, please consider saving the report as a script to the data table