跳到主要内容

KNIME 报告扩展

文档对应的 KNIME AP 版本为 5.2

介绍​

本指南介绍了 KNIME 报告扩展,并展示了如何创建简单和高级报告。

本指南更新于 2024/05/13,最新版请访问指北君网站 https://havef.fun/knime-cn/knime-doc/

KNIME 报告扩展允许您根据工作流程的结果创建静态报告。 您可以自动生成和分发月末结算、季度业绩或按需统计等重复事件的定制报告。 例如,您可以根据您的数据发送 PDF 电子邮件报告。

安装 KNIME Analytics Platform​

报告扩展包含在 KNIME Analytics Platform 版本 5.2 或更高版本的默认安装中。 建议下载并安装最新版本的 KNIME 分析平台。 为此,请参阅 KNIME 分析平台安装指南。

使用 KNIME 的报告扩展​

此工作流程演示了如何使用 KNIME 报告扩展的节点将数据可视化并转换为报告。您可以从 KNIME 社区中心下载 结果工作流程,并根据需要参考它。

首先,您有一个基本的 CSV 数据文件,然后,您可以将数据导入到 KNIME 中并进行可视化。

步骤 1:读取数据​

从 这里 下载 .csv 文件。 然后将.csv文件拖到工作流画布上。 这将自动打开并配置 CSV 读取器节点(CSV Reader)。

可以直接通过指北君分享的网盘下载以上工作流和数据压缩包: https://pan.baidu.com/s/1uQAsNJzxHrbFgfvtV_mOZA?pwd=rfag 提取码: rfag

步骤 2:将视图添加到工作流中并创建组件(component)​

添加视图​

向最终用户传达数据的清晰概述的重要部分是可视化。 要做到这一点,您可以使用 KNIME 视图扩展 中的节点。 它们直接与 KNIME 报告扩展集成。

为了显示世界人口数据,您可以选择最适合您的数据的图表。 在这种示例中,为了可视化数据,您可以使用条形图,并在表中查看每个国家人口。

要添加视图,将连接拖到工作流画布上。 在快速节点插入面板中,找到条形图节点并将其添加到您的工作流中。 重复此步骤,添加表视图节点(Table View)。 最后,您的工作流程将看起来像图中的那样。

添加条形图和表视图节点

图 1. 将视图节点添加到工作流中

将富文本添加到报告中​

KNIME 视图扩展 还允许您将文本添加到报告中。搜索文本视图节点(Text View),然后将其拖到工作流画布中。右键单击它打开配置对话框。它显示文本的预览。您可以在右侧的富文本编辑器中对其进行操作。在编辑器的顶部,您可以选择以下格式选项(从左到右),如图 2 所示。

03 文本视图节点配置对话框

图 2. 文本视图节点配置对话框

文本格式化

您可以将文本格式化更改为:

  • 粗体(Ctrl B)
  • 斜体(Ctrl I)
  • 下划线(Ctrl U)

此外,您还可以添加标点、创建列表并对文本进行对齐(左对齐、右对齐或中对齐)。

单击最右侧三个竖点图标打开下拉菜单,您可以访问更多定制样式,例如在文本中添加代码块或分隔符。 文本样式元素还允许您以标准或小型文本编写,并创建标题。 或者,您可以通过在单词或短语的前面添加数字符号 (#) 和空格来创建标题。 #的总数应与标题级别相匹配。

流变量

流变量的内容可以使用语法 $$["flow-variable-name"] 插入。

创建组件​

从根本上讲,您正在创建的报告由 组件的复合视图 组成。 要将视图节点包含在报告中,请将它们包装在组件中。 首先选择节点,然后单击工具栏顶部的“创建组件”按钮。 按住 Ctrl 键双击该组件,或右键单击并选择 组件 → 打开组件 (Component → Open component)。 显示组件包含的子工作流。

打开布局编辑器​

要自定义复合视图,请使用布局编辑器。 从顶部的工具栏中选择“打开布局编辑器”(Open layout editor)。 布局编辑器会自动创建布局,但它还允许您使用拖放网格进行自定义。如果您想改变视图元素的顺序,您只需将它们拖放到所需的位置即可。 这在 KNIME 组件指南 中更详细地了解。

在布局预览中,根据文本视图节点的内容计算其高度,但可以通过拖放网格进行调整。 如图所示,单击对应文本视图可视化节点的部分右上角的齿轮图标。

布局编辑器中文文本视图自定义

图 3. 布局编辑器中文文本视图的大小自定义

启用报告功能​

要启用组件输出报告视图,请在布局编辑器的底部勾选 Enable Reporting 复选框,然后单击 Finish,如图所示。

03 启用报告

图 4. 通过勾选复选框启用报告功能

这将为您的组件创建报告输入端口和报告输出端口。 一旦您退出布局编辑器,它们将以蓝色方块的形式显示,如图所示。

03 组件报告输出和报告输入端口

图 5. 带有报告输入和输出端口的组件

但是,在您可以执行组件之前,请继续下一步骤:自定义报告模板

步骤 3:自定义报告模板​

在将组件视图连接到报告节点之前,您需要使用报告模板创建器节点(Report Template Creator)自定义页面大小和方向。 将其添加到您的工作流中,并将其输出端口连接到组件的左侧现有的报告输入端口。 现在您的工作流应该像图所示的那样。

03 报告模板创建器节点

图 6. 报告模板创建器节点(Report Template Creator)

配置报告模板创建器节点,以选择页面大小和方向,如图所示。

03 报告模板创建器配置对话框

图 7. 报告模板创建器配置对话框

确认 Ok 并执行该组件。 现在,您可以通过单击组件的右上角放大器图标预览组件的输出。

如果您想在工作流中添加第二页,请使用报告页面分隔节点(Report Page Break)。 它可以防止您的视图在报告文件中的某个页面末尾被切断。 您可以在节点存储库中找到报告页面分隔节点(Report Page Break)。 将其添加到两个组件之间,以便报告上使用页面间隔将其内容分开,如图所示。

03 添加页面分隔

图 8. 添加页面分隔

步骤 4:将内容写入文件​

为了将之前创建的内容作为文档共享,您需要先将其保存到文件中。 从创建报告的组件的报告输出端口,您可以拖动连接并选择兼容的写入节点。 您可以将报告保存为 PDF 或 HTML 文件。

确保选择组件的布局编辑器底部的“启用报告”(Enable Reporting)复选框,并将报告模板创建器节点连接到您的组件,如前面的步骤所述。 否则,您无法将报告写入文件。

要将报告保存为“.pdf”文件,请将 PDF Writer 节点添加到工作流中。 此节点允许您将报告写入指定输出位置的 PDF 文件中。 在 Windows 上,默认情况下,这是本地计算机上的用户目录,文件名设置为“report.pdf”,如下方路径指示:

C:\Users\<username>\report.pdf

但是,您可以更改配置对话框中的位置路径,例如,将其更改为工作流数据区域。 这可以是本地机器上的操作系统依赖的路径或 KNIME URL,如图所示。 您还可以将 PDF 文件重命名为文件路径的一部分。 执行后,文件将保存到指定位置。如果您对工作流进行任何更改并想覆盖现有文件,请将 If output file exists(如果输出文件存在,那么) 设置从默认的 Fail(失败) 更改为 Overwrite(覆盖),如图所示。

KNIME URL 不明白的。请参考 << KNIME 视觉化数据分析 >> 3.6 章节的相关内容。

Report PDF Writer 配置对话框

图 9. Report PDF Writer 配置对话框

要访问 PDF 文件,请导航到文件资源管理器中的 KNIME 工作区。如果您选择按照图中所示保存报告,请打开工作流文件夹,然后打开 “data” 子文件夹。 在这里,您将在之前指定的名称下找到您的报告,以 PDF 格式保存。 要将报告保存为 HTML 文件,请按照之前的步骤,但不要添加 Report PDF Writer 节点,而是使用 Report HTML Writer 节点。

指北君额外的 Tips:

  1. 你可以使用 Generic ECharts View 节点。也就是说 Echart 中的所有的图,基本都是可以嵌入到文档中的(目前有的图会有一些 bug)
  2. 从 KNIME 这个扩展中如果做一个非常完整的、能够直接给别人看的文档其实是有点麻烦和困难的,比如你想要字体的控制,就不可能。但输出成 PDF 之后,你可以直接用 Word 或 WPS 打开,直接进行编辑,然后再存成 docx 或其他什么格式,再或者你自己也可以写一些简单的脚本,对输出草稿进行样式的标准化快速调整。