JMP 是一款功能强大的数据分析和处理工具。具体来说,Tabulate 平台以及其他许多支持生成嵌入式表格的平台,使用户能够快速轻松地生成摘要和洞察。用户通常希望将这些表格嵌入到 Microsoft Word、Apache 的 OpenOffice 或 LibreOffice 中。所有这些创作工具都支持读取和写入 Office Open XML 标准,尤其是 DOCX 文件。
我为本文创建的插件旨在帮助您将 JMP 会话中的表格输出转换为 DOCX 文件,并充分利用所有格式化和样式化功能。该插件使用 python-docx 包 ( https://pypi.org/project/python-docx/ ) 和 JMP/Python 集成来完成此任务。此外,还可以指定一个之前创建的包含现有样式化表格的 DOCX 文件,以便用户创建用于 JMP 表格的格式模板。最后,如果 DOCX 模板包含“标签”(文档中以 ${JMP_ 开头并以 } 结尾的文本,例如 ${JMP_TABLE1}),该插件将在标签所在的位置嵌入表格。
该插件使用独立函数编写,可以从 UI 外部调用,使用户能够将 DOCX 表的创建合并到新的或现有的工作流程中。
制表至 DOCX 表格 UI
将插件安装到您的 JMP 会话将会把 python-docx 包安装到您的 JMP Python 环境中,并在插件菜单中创建一个菜单项:
单击该菜单项将启动 UI 并收集 JMP 会话中所有表格和制表的列表。
如果您在启动 UI 后打开任何新表或创建新的制表,可以点击刷新按钮来更新列表。选择列表中的某个表/制表将显示所选内容的缩略图。如果未选择任何模板 DOCX 文件,则生成的 DOCX 表将不应用任何样式:
点击“浏览”按钮,您可以选择一个 DOCX 文件作为模板。该插件提供了 4 个 DOCX 模板示例,并将它们复制到您的 DOCUMENTS 文件夹中。点击“查看”按钮,可以使用您默认的 DOCX 文件查看/编辑应用程序打开所选的 DOCX 模板。TabulateToDocxTableTemplate1.docx 文件包含以下样式化的表格:
使用该模板,生成的输出现在如下所示:
TabulateToDocxTableTemplate2 和 3 只是不同的表格样式。
第四个模板演示了标记功能。选择该模板后,UI 中会启用一个新选项,让您选择要将表格插入到哪个标记中。
现在,不再创建仅包含样式化表格的空文档,而是使用标签后段落中的表格样式将其插入到标签位置的文档中:
如上所述,即使插件停止运行,此功能仍会作为独立函数存在,可以从其他 JSL 进程调用。相关参数说明如下:
// TabulateToDocxTable:createDocxTable is a function that uses Python to generate a three-line DOCX version of a JMP Tabulate.
//
// tb - required - a reference to a JMP Table, TabulateBox (DisplayBox), or a Tabulate platform
// templatePath - optional - a string for the path of a DOCX file from which to glean the table styling (default Empty() - use the default styling)
// tag - optional - a string for the ${...} enclosed text in the DOCX template that the rendered table will replace. Specifying this option will first copy the DOCX
// into the outputFilePath and modify that copy of the DOCX
// outputFilePath - optional - a string for the path where to write the DOCX file (default "$DOCUMENTS/JMPDocxTable.docx" - JMPDocxTable.docx in the user's Documents folder)
//
TabulateToDocxTable:createDocxTable = function({tb, templatePath=Empty(), tag=Empty(), outputFilePath=Empty()})
该插件可在 JMP 18 和 19 版本以及 Windows 和 Mac 平台上运行。
:megaphone:我们期待您的反馈!
我们正在尝试一些与众不同的功能,很想听听您对这项功能的想法。在您试用完插件后,请花点时间填写以下调查问卷。