跳到主要内容

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 键双击该组件,或右键单击并选择 组件打开组件 (ComponentOpen 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 或其他什么格式,再或者你自己也可以写一些简单的脚本,对输出草稿进行样式的标准化快速调整。