从 JMP® 共享交互式 Web 报告Heman Robinson,SAS JMP 首席软件开发人员
在过去的二十年里,出现了一系列支持交互式网页的竞争技术。最后,行业已经标准化了一项技术,JMP® 已开始提供 HTML 版本 5(即交互式 HTML)的报告。
交互式 HTML 支持 JMP 的许多探索性功能,包括点识别、链接和刷选。 保存的报告可以通过网络共享,或通过电子邮件发送给同事。 本文介绍何时以及如何使用交互式 HTML 共享 JMP 结果。
背景
HTML,即超文本标记语言,是定义所有网页结构的技术( http://www.w3.org/html/ )(伯纳斯·李,1989)。 HTML 与级联样式表一起使用来设置样式( http://www.w3.org/Style/CSS/ )(Meyer,2004),以及用于编程的 JavaScript( http://www.ecmascript.org/ )(克罗克福德,2008)。
在版本 4 中,HTML 对图形和交互性的支持受到限制。 为填补这一空白而开发的技术主要是浏览器扩展或“插件”。 其中包括 Java 小程序、ActiveX 控件、Flash 和 Silverlight。
从 2011 年左右开始,网络浏览器开始支持用于图形的新 HTML 画布元素,以及用于交互的滑块等新控件。 大约在这个时候,竞争技术开始衰落,并且开始使用 HTML5 支持交互式网页。 下图显示了招聘网站 Indeed.com 上广告中关键词频率的这一趋势( http://www.indeed.com/ )。

图1。 交互式网络技术的职位发布
为了应对这一趋势,JMP 与其他软件产品一样,已将 Web 开发从 Flash 转向交互式 HTML。 JMP 交互式 HTML 报告是单个 HTML 文件,可以通过以下方式共享:
- 将其发布到互联网上,
- 将其保存到共享文件夹,或者
- 通过电子邮件将其发送给同事。

图 2. JMP 交互式 HTML 报告
何时使用它
交互式 HTML 需要嵌入数据。 无论使用什么数据来创建图表,这些数据都会嵌入到网页中。 这些数据是模糊的,但可以被有动机的黑客读取。
看来可以通过加密数据来减轻这种安全风险。 不可以。 数据必须可由网络浏览器读取。 因此,加密数据需要解密密钥,并且网络浏览器和其他人都可以读取该密钥。 加密数据相当于为自己的房子购买昂贵的防盗警报器,然后将钥匙留在垫子下。
您可以通过以下方式消除一些风险匿名化您的数据,例如,通过创建不带“名称”或“ID”列的数据子集。 自己创建这个子集是最安全的。 但是,JMP 报告中未使用的列不会嵌入交互式 HTML 文件中。 因此,只要您不将任何识别列用于标签或其他目的,数据就会有效地为您匿名。
如果您分析敏感数据,则始终可以使用静态 HTML 格式(HTML 版本 4),该格式不嵌入数据。 在“文件:另存为”对话框中,HTML4 简单地标记为“HTML 文件”。 HTML5 被标记为“带有数据的交互式 HTML”,以强调交互性和安全性。

图 3. 静态 HTML (HTML4) 和交互式 HTML (HTML5) 的“文件:另存为”对话框
除了嵌入数据之外,交互式 HTML 还需要现代的 Web 浏览器。 在 Windows 上,Internet Explorer 版本 8 不支持 HTML 版本 5,IE 版本 9 和 10 仅支持其中的部分内容。 默认的Android浏览器较旧且速度较慢,Chrome和其他浏览器很容易下载。
截至 2015 年,JMP 建议在以下浏览器和设备上使用交互式 HTML:
- Windows 上的 IE 11 和 Edge
- Windows 和 Mac 上的 Firefox
- Windows 和 Mac 上的 Opera
- Windows、Mac 和 Android 平板电脑上的 Chrome
- Mac 和 iPad 上的 Safari
- Kindle Fire 上的丝绸
您不在手机上测试交互式 HTML。 然而,在较新的 iPhone 和 Android 手机上,它通常运行良好。 性能和功能因手机而异。
如何使用它
保存报告
要以 HTML5 格式保存报告,请在 Windows 上选择“文件:另存为:”,或在 Mac 上选择“文件:导出”,然后指定格式“交互式 HTML 与数据”。

图 4. 交互式 HTML (HTML5) 的“文件:另存为”对话框
交互式 HTML 支持 JMP 最常用的功能。 如果您的报告包含不受支持的功能,您将在对话框中看到一条警告,如图 5 所示。 如果发生这种情况,部分报告将导出为静态图像,与静态 HTML4 中的相同。

图 5. 不支持的功能警告
概要
创建交互式 HTML 报告时,创建页面时关闭的图形和表格在网页中保持关闭状态,直到您打开它们。 通过单击或点击报告中的大纲按钮来打开或关闭报告部分。
下图显示了如何打开“失拟”表。 “方差分析”和“参数估计”表已打开。

图 6:使用轮廓按钮
JMP Interactive HTML 采用“移动优先”用户界面设计策略(Wroblewski,2011)。当您创建交互式 HTML 报告时,您并不总是知道将在哪些设备上读取该报告。 因此,无论是在桌面还是移动设备上,按钮等控件都很大且易于使用。
菜单
使用菜单更改报告内容的状态或外观。 菜单内容取决于关联大纲的内容。 例如,Profiler 有一个菜单可以重置其状态。

图 7:使用分析器菜单
气泡图有一个广泛的菜单系统来改变它的外观和行为。

图 8:使用气泡图菜单
模式
关于模式在用户界面中,传统的设计建议是“尽可能避免它们”(Nielsen,1993)。然而,要支持像 JMP 这样具有丰富交互性的产品,某些模式是必要的。
一个熟悉的例子是选择模式。 您可能想要选择单个对象或多个对象。 单选和多选是两种不同的模式。
在桌面产品中,Shift 和 Ctrl 键用于在选择模式之间切换。 但是,在移动设备上,这些密钥不存在。
因此,选择模式在页面顶部显示为一对切换按钮。 默认情况下,按下该对中的第一个按钮。 这使您可以一次选择一个对象,并取消选择所有其他对象。

图 9:选择单个对象
要选择多个对象,请单击或点击第二个切换按钮。 这使您能够选择或取消选择多个对象。
在下图中,选择了三个直方图条。 与 JMP 中一样,所有图表都是链接的,因此在一个图中选择的行会在所有图中突出显示(Becker 和 Cleveland,1987)(Stuetzle,1987)。

图 10:选择多个对象
Shift 和 Ctrl 键与切换按钮的行为之间存在有用的区别。 这些按键可以启用临时模式切换,这往往会减少用户错误(Raskin 2000)。 切换按钮可实现持久模式切换,这在移动设备上更简单且更容易学习。 如果您在桌面上查看交互式 HTML 报告,则这两种行为均受支持。
第二对切换按钮将焦点从整个报告切换到数据。 默认情况下,按下该对中的第一个按钮。 在移动设备上,第一个切换按钮使您能够滚动和缩放报告。 在所有设备上,它使您能够识别报告中的对象。 交互式 HTML 报告中的几乎所有对象都可以显示一些标识信息。

图 11:识别对象
下图显示了使用 Iris.jmp 进行的二元拟合,Iris.jmp 是一个 JMP 样本数据表,包含 Fisher 对三种不同鸢尾品种的测量结果。 一个数据点已通过其 X 和 Y 坐标以及行号进行标识。 下表显示了p -值及其相关描述。

图 12:识别数据值

图 13:描述p -价值
您并不总是想要识别对象或操纵报告。 通常,您的目标是探索数据。 通过单击或点击第二个切换按钮,您可以拖动矩形以选择图表中的行。 这就是所谓的刷牙,探索多元数据的重要技术(Becker 和 Cleveland,1987)。 拖动矩形的中心来移动它,或者拖动角来调整它的大小。

图14:刷数据
为了获得额外的功率,可以组合多种模式。 如果您使用带有多个选择的画笔,这会导致画笔扩展选择范围,“绘制”数据,如下图所示。
这两对模式支持数据探索中最常见和最有用的交互功能。 JMP 提供了一组丰富的附加模式,其中许多都出现在工具选项板中(Cooper 和 Reimann,2003)。 由于光标支持较差,工具选项板隐喻在 Web 应用程序中不太有用,但将来的版本可能会支持其中一些模式。

图 15:使用多项选择进行刷涂
如何实现自动化
交互式 HTML 报告可以使用 JMP 脚本语言 (JSL) 实现自动化(SAS,2014)。 新命令“保存交互式 HTML”启用了此功能。
// 导出二元拟合。
dt = Open( "$SAMPLE_DATA/Big Class.jmp" );
obj = Bivariate( Y( : 重量 ), X( : 高度 ), 拟合线 );
obj << 保存交互式 HTML( "C:\Bivariate.html" );
打开(“C:\Bivariate.html”);
在上面的脚本中,“保存交互式 HTML”命令后面跟着一个“打开”命令。 这会自动在您的默认 Web 浏览器中显示报告。
如何组织它
如果您创建许多交互式 HTML 报告,您将受益于 JMP 自动发布插件(Valente、Brady 和 Kennedy,2014 年)。 这提供了一种自动组织报告的方法,其中封面和缩略图链接到各个报告。 从 JMP 用户社区下载 JMP 自动发布插件: https://community.jmp.com/docs/DOC-6689 。
JMP 自动发布插件生成了下面的封面页,我们的示例位于http://www.jmp.com/jmphtml5/ 。

图 16.使用 JMP 自动发布插件组织的报告
未来的工作
该项目的开发是由客户需求驱动的。 JMP 11 支持最常用的表格和图表。 JMP 12 中添加了气泡图和刻画器。
对于未来的版本,对 GraphBuilder 有相当大的需求。 我们还希望将JMP自动发布插件集成到主要产品中,我们对客户的要求最感兴趣。
参考
贝克尔 R. 和克利夫兰 W. (1987)。 “刷散点图”,技术计量学,127-142。
伯纳斯-李 T. (1989)。 “信息管理:一项建议”,欧洲核子研究中心。
库珀 A. 和雷曼 R (2003)。 关于Face 2.0:交互设计的要点。 威利,322-323。
克罗克福德 D. (2008)。 JavaScript&col;好的部分。 奥莱利.
迈耶 E. (2004)。 层叠样式表:权威指南。 奥莱利.
尼尔森 J. (1993)。 可用性工程。 学术出版社,146-148。
拉斯金·J. (2000)。 人性化界面:交互系统设计的新方向。 ACM 出版社,55-59。
英国航空公司(2014)。 JMP 11 脚本编写指南,第二版。 SAS 研究所公司
斯图茨勒·W. (1987)。 “绘图窗口”,美国统计协会杂志,82 ,466-475。
瓦伦特 D. 布雷迪 B. 和肯尼迪 A. (2014)。 “用于自动发布交互式 HTML 报告的 JMP 插件”, 2014 年 JMP 探索峰会。
弗罗布莱夫斯基 L. (2011)。 移动优先。 一本书分开。
数据探索数据可视化